在使用AndroidX库时,findViewById方法已经被弃用,应该使用View Binding或Data Binding来替代。以下是两种解决方法的示例代码:
使用View Binding:
android {
...
viewBinding {
enabled = true
}
}
private lateinit var binding: YourLayoutBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = YourLayoutBinding.inflate(layoutInflater)
setContentView(binding.root)
val toolbar = binding.toolbar
...
}
使用Data Binding:
android {
...
dataBinding {
enabled = true
}
}
private lateinit var binding: YourLayoutBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = DataBindingUtil.setContentView(this, R.layout.your_layout)
val toolbar = binding.toolbar
...
}
以上两种方法都是使用了类型安全的方式来获取Toolbar,避免了findViewById方法的使用。根据你的具体需求,选择其中一种方法即可解决该问题。