文章目录
- 效果
- 1、加入依赖
- 2、与控件进行绑定
- 在 Activity 中使用视图绑定
- 3、监听控件
效果
实现源码
class MainActivity : AppCompatActivity() { lateinit var binding:ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //setContentView(R.layout.activity_main) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) binding.button.text = "Hello" } }
1、加入依赖
在app 的 build.gradle 文件下的 android 标签下加入下面的代码
可以在Java / Kotlin语言中均可以使用,配置:
android { ....... buildFeatures { viewBinding true } }
只在Kotlin语言版本中配置:
android { ... viewBinding { enabled = true } }
2、与控件进行绑定
以下演示一个按钮绑定
xml文件
lateinit var binding:ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // setContentView(R.layout.activity_main) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) } } lateinit var binding:ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // setContentView(R.layout.activity_main) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) binding.exitButton.setOnClickListener { // 点击事件处理逻辑 } } } lateinit var binding:ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //setContentView(R.layout.activity_main) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) binding.button.setOnClickListener{ Log.e("MainActivity","点击了按钮") } } }