https://developer.android.com/topic/libraries/data-binding/index.html
我无法理解不这样做.
androID {
….
dataBinding {
enabled = true
}
}
<data> <variable name="presenter" type="ua.com.it_st.ordersmanagers.activiteIEs.HistoryActivity"/></data><button androID:ID="@+ID/test" androID:text="Start second activity" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" androID:clickable="true" androID:onClick="@{presenter::onHistoryClick}" />
public class HistoryActivity extends MvpAppCompatActivity implements HistoryVIEw { @InjectPresenter HistoryPresenter historyPresenter; ActivityHistoryBinding binding; @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = DataBindingUtil.setContentVIEw(this,R.layout.activity_history); } public voID onHistoryClick(VIEw vIEw) { Log.i("test ","test"); binding.test.setText("test"); }解决方法 您忘记将viewmodel设置为绑定.
如果您希望在活动中收到onClick,则必须这样做
binding.setPresenter(this)
虽然我建议在XML文件viewmodel或activity中调用viewmodel(现在称为presenter).
如果您希望您的演示者接收onClick,请将布局中的viewmodel类型从活动更改为演示者,在演示者中实现onClick方法,并执行
binding.setPresenter(presenter)总结
以上是内存溢出为你收集整理的android – onClick in Button无法使用数据绑定全部内容,希望文章能够帮你解决android – onClick in Button无法使用数据绑定所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)