Android数据绑定将parameter passing给onClick方法

可以使用数据绑定库将自定义parameter passing给onClick方法? 我有我的布局xml文件,我需要使用onClickListener:

 <?xml version="1.0" encoding="utf-8"?> <layout ...> <data> <variable name="viewModel" type="com.productivity.tiktak.ui.tracker.viewModel.CategoryViewModel"/> <variable name="callback" type="com.productivity.tiktak.ui.tracker.TrackerAdapter"/> </data> <android.support.v7.widget.CardView android:onClick="@{callback.onCategoryClick(viewModel)}" ... android:layout_width="match_parent" android:layout_height="wrap_content"> <!-- ... Some stuff --> </android.support.v7.widget.CardView> </layout> 

我在这里有我的点击处理程序代码:

 public void onCategoryClick(View view, CategoryViewModel categoryViewModel) { //handler code... } 

是否有可能将我的CategoryViewModel对象从xml传递到点击处理程序?

Related of "Android数据绑定将parameter passing给onClick方法"

你可以使用lambdaexpression式。

  android:onClick="@{() -> callback.onCategoryClick(viewModel)}" 

如果你需要这个视图,你可以通过以下方式来传递:

  android:onClick="@{(v) -> callback.onCategoryClick(v, viewModel)}"