新增的Kotlin项目需要使用DataBinding的时候要在module的build.gradle中添加如下配置
1,启用DataBinding, 跟使用java语言时一样的配置
android {
...
dataBinding {
enabled = true
}
}
2,dependencies 添加插件
dependencies {
...
//kotlin使用DataBinding需要用到, 版本跟gradle一致
kapt "com.android.databinding:compiler:$gradle_version"
}
3,文件末尾添加插件配置
kapt {
generateStubs = true
}
module的build.gradle举例如下
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
buildToolsVersion androidBuildTools
compileSdkVersion androidTargetSdk
defaultConfig {
applicationId "com.xxx.xxx"
minSdkVersion 19
targetSdkVersion androidTargetSdk
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
//minifyEnabled false
//proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
incremental true
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
dataBinding {
enabled = true
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
//kotlin使用DataBinding需要用到, 版本跟gradle一致
kapt "com.android.databinding:compiler:$gradle_version"
//design
compile 'com.android.support:design:25.3.1'
//retrofit,OKHttp3
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
//Retrofit2使用gson序列化
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
//okhttp3拦截器
compile 'com.squareup.okhttp3:logging-interceptor:3.4.1'
//GSON
compile 'com.google.code.gson:gson:2.8.0'
}
//kotlin使用DataBinding需要用到
kapt {
generateStubs = true
}
project的build.gradle举例如下
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = '1.1.51'
ext.gradle_version = '3.0.1'
repositories {
google()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:$gradle_version"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
ext.androidBuildTools = '27.0.3'
ext.androidTargetSdk = 25
}
task clean(type: Delete) {
delete rootProject.buildDir
}
分享到:
相关推荐
ViewModel不直接依赖于View或Model,确保了其在设备旋转等配置更改时能够存活。 在本示例中,`MyApplication_Databinding-master`可能包含以下关键组成部分: 1. **Activity/Fragment**:作为View层,它们会绑定到...
在本文中,我们将深入探讨WPF(Windows Presentation Foundation)中的数据绑定机制,这是一种强大的功能,允许UI元素与应用程序数据之间建立直接的连接。WPF的数据绑定是C#编程中的核心特性,极大地简化了用户界面...
通过注解,可以轻松地配置URL路径、请求方法、请求头等,使得网络请求的代码更加清晰、简洁。 **MVVM(Model-View-ViewModel)架构** MVVM是一种设计模式,适用于UI密集型应用,如Android。在MVVM中,Model代表数据...
本项目“mvvm_livedata_databinding_kotlin”显然是一个示例或教程,旨在教授如何在Android应用中有效地使用这些技术。 首先,让我们深入理解MVVM架构模式。MVVM是由微软在WPF框架中引入的一种设计模式,后来被广泛...
DataBinding-ktx使声明数据绑定变得容易。 在这里。 数据绑定中的问题 忘记在DataBinding中调用setLifecycleOwner 。 在Activity和Fragment中声明binding变量的方式有所不同。 在活动中,可以使用by lazy声明...
本项目“CustomView_Mvvm_DataBinding_BindingAdapters”就是这样一个示例,它演示了如何利用Kotlin语言来实现带有绑定适配器的Data Binding,以创建一个基于Mvvm的自定义视图。 首先,我们要理解MVVM架构。这是一...
在Android开发中,DataBinding库是Google推荐的一种用于简化视图和数据绑定的工具,它极大地减少了我们在Activity或Fragment中处理UI逻辑的代码量。ViewStub是一个轻量级的视图,它在默认情况下不可见,只有在被...
在Android开发中,Databinding库和RecyclerView是两个非常重要的组件。Databinding提供了一种更简洁、可维护的方式来绑定数据到UI元素,而RecyclerView则是一个高效的数据展示控件,适用于大量的列表或网格数据。本...
ondatabinding="FileUpload1_DataBinding"> 分离样式" onclick="Button1_Click" /> 下载" > <asp:textbox ID="txt" runat="server" TextMode="MultiLine" Width="100%" Height="609"></asp:textbox> </form>
数据绑定(DataBinding)是Android开发中的一种技术,它能够帮助开发者更简洁、直观地处理UI与数据模型之间的交互。在RecyclerView中应用DataBinding,可以极大地提高代码的可读性和可维护性,减少样板代码,并使得...
在Android开发中,DataBinding库是Google推出的一种官方数据绑定框架,它可以帮助开发者更方便地实现视图与数据模型之间的绑定,从而简化UI逻辑,提高代码的可读性和可维护性。本文将深入探讨DataBinding的基本用法...
### DataBinding2使用手册 #### 一、简介 DataBinding2是基于JQuery的一个扩展库,主要用于简化HTML元素与后端数据之间的绑定过程。相比于早期版本,DataBinding2增加了许多新特性,使得开发者能够更加高效地处理...
**DataBinding 概述** DataBinding 是 Android 开发中的一个库,它允许开发者将数据模型直接绑定到用户界面,从而简化了代码,提高了可读性和可维护性。这个框架是 Android 支持库的一部分,引入 DataBinding 可以...
eclipse 代码补全时回车上屏问题-eclipse代码补全 org.eclipse.jface.databinding_1.9.100.v20190805-1255.jar,放到 ~/.p2/pool/plugins替换即可
在本资源“DataBinding_C#源码”中,我们可以深入理解这一概念并学习其实现方式。 数据绑定的基本思想是将数据源与用户界面控件连接起来,使得数据的变化能够实时反映在界面上,反之亦然。在C#中,数据绑定主要通过...
在Android开发中,DataBinding库是一种强大的工具,它可以帮助开发者更方便地管理视图与数据模型之间的绑定,从而简化代码并提高可读性。本文将深入探讨DataBinding库中的事件绑定功能,帮助你理解如何利用这一特性...
DataBinding的引入与配置 在Android Studio项目中,要启用DataBinding,首先需要在`build.gradle`模块文件中添加以下依赖: ```groovy android { dataBinding { enabled = true } } ``` 然后同步项目,...
总结来说,ViewModel确保了数据在配置更改时的持久性,LiveData提供了生命周期感知的数据更新,而DataBinding简化了UI与数据模型之间的交互。这三个组件的结合使得开发出的篮球赛积分APP能够实现高效、智能的数据...
Android DataBinding 的官方双向绑定示例 Android DataBinding 是一项强大的技术,可以帮助开发者快速构建用户界面,并且提供了双向绑定的功能。在 Android Studio 2.1 Preview 3 之后,官方开始支持双向绑定。...
它使得应用能在不同屏幕尺寸和配置变化中保持模块化,便于代码复用和维护。 **Fragment的生命周期:** 1. `onAttach()`:Fragment与Activity建立关联。 2. `onCreate()`:初始化资源,但不保证视图已创建。 3. `...