android:onClick="@{listener::onClickToItem}" <variable
name="listener"
type="fragments.route.ProductClickCallback1"/>
Здесь все вроде четко. Затем сам обработчик:
public void onClickToItem(View v){
ListOfRouteBinding mBInd = DataBindingUtil.bind(v);
mBInd.setIsVisible(true);
}
Как сетим обработчик?
public ListOfRouteAdapter() {
this.mProductClickCallback = new ProductClickCallback1();
}
Затем передаем его в холдер
@Override
public void onBindViewHolder(@NonNull RouteViewHolder holder, int position) {
if (listOfRoutes != null) {
holder.bind(listOfRoutes.get(position), position, mProductClickCallback);
}
}
После это делаем public void bind ( final RouteModel listOfRoutes, int position, ProductClickCallback1 mProductClickCallback)
{
mBind.routeName.setText(listOfRoutes.getPointName());
mBind.operationType.setText(listOfRoutes.getEstimatedTime());
mBind.numTxt.setText(String.valueOf(position + 1));
mBind.setListener(mProductClickCallback);
}
Попробуйте без ListOfRouteBinding mBInd = DataBindingUtil.bind(v); mBInd.setIsVisible(true); Напрямую поменять
Обсуждают сегодня