android 事件参数传递,android-databinding – 使用android DataBinding库如何将参数传递给绑定事件...

我得到了答案.

在xml for onclick中使用lambda表达式

layout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:app="http://schemas.android.com/apk/res-auto">

name="movie"

type="embitel.com.databindingexample.helper.Movie" />

name="handler"

type="embitel.com.databindingexample.helper.MyHandlers" />

android:id="@+id/cardview"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_gravity="center"

android:layout_marginTop="4dp"

06001

app:cardBackgroundColor="@android:color/white"

app:cardCornerRadius="4dp">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="vertical"

android:padding="8dp">

android:layout_width="match_parent"

android:layout_height="128dp"

android:scaleType="centerCrop"

app:error="@{@drawable/ic_launcher}"

app:imageUrl="@{movie.imageUrl}" />

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="@{movie.title}" />

然后创建处理程序类,

public class MyHandlers {

public void onItemClicked(View v, Movie movie) {

Context context = v.getContext();

context.startActivity(DetailActivity.buildIntent(context, movie));

}

}

那么你需要设置处理程序,其中xml是iflated,

binding.setHandler(new MyHandlers());

你也可以把handler方法放在任何类中.在这种情况下,您必须将该类名称设置为处理程序.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值