欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

DataBinding点击事件没有反应

程序员文章站 2022-07-14 11:55:48
...

根据官方文档,发现点击事件并没有触发

<data>
        <variable
            name="user"
            type="com.m.databindingdemo.model.User"/>
        <variable
            name="handlers"
            type="com.m.databindingdemo.model.MyHandlers"/>
    </data>

。。。

<TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="18sp"
            android:text="@{user.firstname}"
            android:onClick="@{handlers::onClickFriend}"
            />

 

Handler:

class MyHandlers {

    fun onClickFriend(view: View) {
        Toast.makeText(view.context,"test method reference",Toast.LENGTH_LONG).show()
    }
}

原因是需要绑定:

val binding = DataBindingUtil.setContentView<ActivityMainBinding>(this, R.layout.activity_main)
binding.handlers = MyHandlers()  //关键语句

  

参考:

1.http://blog.csdn.net/xiaolaohuqwer/article/details/79161338

相关标签: databinding onClick