使用Kotlin在android中初始化视图的编码标准



在Android中使用Kotlin声明和初始化视图的官方编码标准是什么?如果是基于具体情况的,你会使用什么情况?

我看到了这些方式:

//Kotlin extensions
onCreate
...
btn_xml_tag.setOnClickListener {
...
} 
//More like java
private lateinit var button : Button 
...
onCreate
...
button = findViewById(R.id.button)
button?.setOnClickListener{...}
//Lazy
private val button : Button by lazy {
findViewById(R.id.button_view) as Button
}
...
onCreate
...
button.setOnClickListener{...}

您应该尝试Android数据绑定。这是标准的方法。根据新的体系结构组件,您不需要从代码中访问视图的实例,而是直接将数据绑定到XML中。新的体系结构标准遵循MVVM体系结构。

关于您的问题,考虑到代码的可读性和长度,三种选择中最好的一种是使用Kotlin扩展。也就是说,以下将是最好的方法(尽管我会给视图一个与kotlin命名标准匹配的ID(:

btnXmlTag.setOnClickListener {
...
} 

您可以使用androidDataBinding并在"活动"中直接膨胀这些视图,而无需初始化。

只需要在gradle文件中添加这些语法。

dataBinding{enabled=true}

并且在布局文件中,父级应该在布局标签中

相关内容

  • 没有找到相关文章

最新更新