Is it possible to bind a handler for setOnPageChangeListener to a ViewPager in XML file with the Android Binding functionality?
The demos show onClick events but I
It is possible to do this. You need to implement a custom binding adapter because there is no BindingAdapter classes predefined for View classes from Android support libraries.
For how to implement the custom adapter you may read this.
The code should be something like the below, I haven't tested them thoroughly:
Your BindingAapter code:
@BindingAdapter("onPageChangeListener")
public static void setOnPageChangeListener(ViewPager viewPager, ViewPager.OnPageChangeListener listener) {
Log.i("setOnPageChangeListener");
// clear listeners first avoid adding duplicate listener upon calling notify update related code
viewPager.clearOnPageChangeListeners();
viewPager.addOnPageChangeListener(listener);
}
P.S. Your handler class being passed should implement ViewPager.OnPageChangeListener
.