1 Star 0 Fork 2

chenjim / kotlin-for-android-developers-zh

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
zen_yaoqu_shi_yong_kotlinandroid_extensions.md 1.77 KB
一键复制 编辑 原始数据 按行查看 历史

怎么去使用Kotlin Android Extensions

如果你还记得,现在项目已经准备好去使用Kotlin Android Extensions。当我们创建这个项目,我们就已经在build.gradle中增加了这个依赖:

buldscript{
	repositories {
		jcenter()
	}
	dependencies {
		classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
	}
}

唯一一件需要这个插件做的事情是在类中增加一个特定的"手工"import来使用这个功能。我们有两个方法来使用它:

Activities或者FragmentsAndroid Extensions

这是最典型的使用方式。它们可以作为activityfragment的属性是可以被访问的。属性的名字就是XML中对应view的id。

我们需要使用的import语句以kotlin.android.synthetic开头,然后加上我们要绑定到Activity的布局XML的名字:

import kotlinx.android.synthetic.activity_main.*

此后,我们就可以在setContentView被调用后访问这些view。新的Android Studio版本中可以通过使用include标签在Activity默认布局中增加内嵌的布局。很重要的一点是,针对这些布局,我们也需要增加手工的import:

import kotlinx.android.synthetic.activity_main.*
import kotlinx.android.synthetic.content_main.*

ViewsAndroid Extensions

前面说的使用还是有局限性的,因为可能有很多代码需要访问XML中的view。比如,一个自定义view或者一个adapter。举个例子,绑定一个xml中的view到另一个view。唯一不同的就是需要import

import kotlinx.android.synthetic.view_item.view.*

如果我们需要一个adapter,比如,我们现在要从inflater的View中访问属性:

view.textView.text = "Hello"
1
https://gitee.com/chenjim/kotlin-for-android-developers-zh.git
git@gitee.com:chenjim/kotlin-for-android-developers-zh.git
chenjim
kotlin-for-android-developers-zh
kotlin-for-android-developers-zh
master

搜索帮助