以下两种onclick方法参数写法哪个是View Binding?二者有什么区别?
问题解答
核心结论
两种写法都不属于View Binding特有的写法,二者仅为View类的导入声明方式不同,和View Binding能力没有直接关联。这两种方法签名都适配传统安卓开发里XML布局通过android:onClick属性绑定点击事件的要求。
二者具体区别
- 写法1:
fun onclick(view: android.view.View)
直接使用了View类的全限定类名,无需在当前代码文件顶部提前导入android.view.View包即可编译。仅在同文件内存在其他重名的View类需要做类区分时才会使用该写法。 - 写法2:
fun onclick(view: View)
是日常开发的通用简写形式,需要在当前Kotlin/Java文件顶部提前导入import android.view.View包才能正常编译,使用场景更普遍。
View Binding典型点击事件写法参考
View Binding的核心特征是通过自动生成的布局绑定类访问控件,不需要依赖XML的android:onClick属性绑定事件,标准写法示例如下:
// 初始化绑定类实例 private lateinit var binding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // 填充绑定类 binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) // 直接通过绑定类访问控件设置点击事件 binding.submitBtn.setOnClickListener { // 点击逻辑处理 } }
内容的提问来源于stack exchange,提问作者Preetthee Hasan
相关产品推荐
相关产品推荐

