¿Cómo puedo acceder a una variable de instancia dentro de un BindingAdapter al usar la vinculación de datos de Android?

Así que estoy utilizando este popular código de enlace de datos de código para cargar en la imagen en la vista de la imagen de los elementos de la lista pasando en URL:

<ImageView android:layout_width="match_parent" android:layout_height="150dp"" app:imageUrl="@{movie.imageUrl}" /> 

El adaptador de encuadernación:

 class Movie{ boolean isLoaded; @BindingAdapter({"bind:imageUrl"}) public static void loadImage(final ImageView view, String imageUrl) { Picasso.with(view.getContext()) .load(imageUrl) .into(view, new Callback.EmptyCallback() { @Override public void onSuccess() { //set isLoaded to true for the listview item // but cannot access boolean isLoaded as it is non static. }); } 

Si simplemente hago que el BindingAdapter no estático, entonces lanza error:

 java.lang.IllegalStateException: Required DataBindingComponent is null in class MovieTileBinding. A BindingAdapter in com.example.moviesapp.Pojos.Results is not static and requires an object to use, retrieved from the DataBindingComponent. If you don't use an inflation method taking a DataBindingComponent, use DataBindingUtil.setDefaultComponent or make all BindingAdapter methods static. 

Ponga toda la película instace a través de un adaptador personalizado:

  <ImageView android:layout_width="match_parent" android:layout_height="150dp"" app:movie="@{movie}" /> 

El adaptador de encuadernación:

 class Movie{ boolean isLoaded; @BindingAdapter({"movie"}) public static void loadImage(final ImageView view, final Movie movie) { if(movie != null && moview.getImageUrl() != null){ Picasso.with(view.getContext()) .load(movie.getImageUrl()) .into(view, new Callback.EmptyCallback() { @Override public void onSuccess() { image.setLoaded(true); }); } } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.