Android

关注公众号 jb51net

关闭
首页 > 软件编程 > Android > kotlin使用ViewBinding绑定控件

kotlin中使用ViewBinding绑定控件的方法

作者:Style_OvO

View Binding是Android Studio 3.6推出的新特性,主要用于减少findViewById的冗余代码,但内部实现还是通过使用findViewById,这篇文章主要介绍了kotlin中使用ViewBinding绑定控件,需要的朋友可以参考下

kotlin中使用ViewBinding绑定控件

什么是ViewBinding?

配置ViewBinding

android {
    namespace xxx
    compileSdkVersion versions.compileSdk
    defaultConfig {
        ...
    }
    compileOptions {
        ...
    }
    buildFeatures{
        viewBinding true
    }
}

配置完成后 Sync一下gradle,编译项目后会在build→generated→data_binding_base_class_source_out文件中生成相应的类。Binding类的命名规则是将布局文件按驼峰方式重命名后,再加上Binding作为结尾。例如,我们activity_main.xml布局对应的Binding类就是ActivityMainBinding。

如果有些布局文件你不希望为它生成对应的Binding类,可以在该布局文件的根元素位置加入
tools:viewBindingIgnore="true"

使用ViewBinding

在Activity使用viewbing,如下代码所示。注意:我们需要先Binding类的getRoot方法获取到对应布局文件的根元素,然后将其传入到setContentView方法中,否则设置监听事件会无法生效

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        //初始化ViewBinding控件
        var myBinding = ActivityMainBinding.inflate(layoutInflater)
        //把根元素的对象作为参数传入到setContentView()方法中
        setContentView(myBinding.root)
        //botton是activity_main.xml中的一个按钮id
        myBinding.botton.setOnClickListener {
			//Code Logic
        }
    }
}

到此这篇关于kotlin中使用ViewBinding绑定控件的文章就介绍到这了,更多相关kotlin使用ViewBinding绑定控件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文