安卓开发中ViewBinding的使用

在安卓开发中,ViewBing 的作用就是简化 findViewById() 代码的写法。

看看下面的替换:

et=binding.text

//et=findViewById(R.id.text)

下面就看看怎么用的,

首先,打开app模块的build.gradle,然后添加如下代码:

buildFeatures {
    viewBinding = true
}

这个是添加在Android 里面的,见下图:

安卓开发中ViewBinding的使用_第1张图片

添加代码后,系统提示sync now 见上图的双框,一定要点击,然后等待sync完毕,才有效。

下面就开始使用它:

这里的使用也很简单,如果你了解Kotlin语法的话,首先是创建一个binding变量,类型是ActivityMainBinding,这是一个编译时生成的类,它源于你的activity_main.xml,就是将你的xml文件名称再加上Binding后缀,如果你的布局是item_device.xml,那么生成的类就是ItemDeviceBinding,这样你应该好理解了。下面看看我的代码:

...
import com.liwensoft.hellogit.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {
    private lateinit var et: EditText
    private lateinit var binding: ActivityMainBinding   //add binding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        //setContentView(R.layout.activity_main)
        et=binding.text
        //et=findViewById(R.id.text)
        val plus:Button=binding.copy
        //val plus: Button = findViewById(R.id.copy)
        plus.setOnClickListener {
            OnClick()
        }
    }
...
}
设置一个变量
private lateinit var binding: ActivityMainBinding   //add binding

在onCreate 函数中加:

binding = ActivityMainBinding.inflate(layoutInflater)

然后可以看到bing 对下面一行注释的代码的替代。

我最开始看到这个是在下面链接中的一个介绍。

Android Studio 安装配置教程 - Windows(详细版)_android studio安装教程_初学者-Study的博客-CSDN博客

变量很多的时候,比较方便,最重要的是,别人这么写的时候,你能看懂。

你可能感兴趣的:(安卓应用开发,android)