找到 build.gradle 文件,因为有两个 build.gradle,我们要操作的是第二个:
在这个位置加上这一句话,然后点击右上角的 Sync Now 按钮更新项目:
viewBinding {
enabled = true
}
一个 Activity 对应一个 Layout,比如 MainActivity,那么它的 viewBinding 名称是:ActivityMainBinding。如果是 SecondActivity,那么它的 viewBinding 名称是:ActivitySecondBinding。
class MainActivity : AppCompatActivity() {
private lateinit var _l: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
_l = ActivityMainBinding.inflate(layoutInflater)
setContentView(_l.root)
}
}
比如上面的代码,替换 setContentView 之前设置的 R.layout.xxx,传递 viewBinding 对象。
_l.textView.setText("Hello World!")
之后就再也不需要 findViewById 函数查找控件了,确实省了不少事情,代码也看着漂亮些了。
标签:findViewById,setContentView,viewBinding,savedInstanceState,MainActivity,Activity From: https://www.cnblogs.com/Enziandom/p/16950860.html