我们想再将编写一些代码来测试Kotlin Android Extensions是否在工作。我现在还不会对这些代码做解释,但是我想要确保它们在你的环境中是正常运行的。这可能是配置中最难的一部分。
首先,打开activity_main.xml
,然后设置TextView的id:
<TextView
android:id="@+id/message"
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
然后,手动在Activity中增加一个import语句(不要担心你现在对这个还不太理解)。
import kotlinx.android.synthetic.main.activity_main.*
在onCreate
中,你现在可以直接得到并访问这个TextView了。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
message.text = "Hello Kotlin!"
}
多亏Kotlin和Java之间的互操作性,我们可以在Kotlin中像操作属性一样去操作Java库中的getter/setter方法。我们之后再去讲解属性,但是我想提醒的是,我们可以使用message.text
来代替message.setText
。编译器将会把它转换成一般的Java代码,所以这样使用是没有任何性能开销的。
现在运行这个app,并且它是正常运行的。检查TextView是否是显示的新的内容。如果你有疑问或者想查看代码,请在Kotlin for Android Developers repository查看。每个章节只要修改了代码,我都会进行提交,所以一定要检查所有的代码变化。
下一章会覆盖你在转换之后的MainActivity所看到的新的东西。一旦你理解了Java和Kotlin之间的细微的变化,你将能更容易独立写新的代码了。