開(kāi)啟ViewBinding,只需在app -> build.gradle中增加一下配置
android {
...
buildFeatures {
viewBinding true
}
}
ViewBinding會(huì)在編譯期根據(jù)layout文件生成對(duì)應(yīng)的class,如:first_layout.xml,會(huì)生成FirstLayoutBinding的class。
在Activity中創(chuàng)建ViewBinding實(shí)例, 并在適當(dāng)?shù)臅r(shí)候訪問(wèn)其成員
import com.example.activitytest.databinding.FirstLayoutBinding
class FirstActivity : AppCompatActivity() {
private lateinit var binding: FirstLayoutBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = FirstLayoutBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
binding.button1.setOnClickListener {
Toast.makeText(this, "You clicked Button ", Toast.LENGTH_SHORT).show()
}
}
}