No se puede encontrar el GETTER para el atributo 'app: vm' con el tipo de valor Boolean

Estoy tratando de usar nativa de 2 vías de enlace de datos de Android en mi control personalizado

Así que tengo algo así en xml

<layout> <data> <variable name="item" type="Boolean"/> </data> ... <my.control app:vm="@={item}"/> ... </layout> 

Tenga en cuenta que es cuestión de @={} – enlace nativo de 2 vías.


Y algo así en el código:

 class MyControl extends RelativeLayout{ ... @BindingAdapter("app:vm") public static void setVm(View v, VM vm){...} } 

Mis preguntas – ¿cómo debo definir getter para mi viewModel? No encuentro ninguna orientación al respecto. He intentado diferentes enfoques – escribir getter personalizado, getters estática, pero el error sigue siendo el mismo.

Tomado de aquí , bajo "Rolling Your Own":

Necesitará un poco más de código extra para obtener el enlace de datos bidireccional trabajando con clases personalizadas. Lo más importante, necesitará definir un @InverseBindingMethod :

 @InverseBindingMethods({ @InverseBindingMethod(type = MyControl.class, attribute = "vm"), }) 

En este caso, el nombre del getter coincide con el nombre del atributo "getVm" para "app: vm." (Cambiado a su ejemplo)

Por favor, visite el blog vinculado, que tiene más información sobre ese tema, incluyendo la vinculación de un atributo cambiado de evento.

  • Enlace de datos de Android layout_width y layout_height
  • Error de enlace de datos: sólo se permite un elemento de diseño y un elemento de datos.
  • Android - DataBinding - ¿Cómo y cuándo se generarán las clases de enlace?
  • Android vinculación de datos (similar a WPF)?
  • Obtener una clase vinculante desde vista
  • Android Spinner databind usando la lista de matrices
  • DataBinding en android
  • Posible motivo de "Error: no se pueden generar carpetas de vista java.lang.NullPointerException"
  • El enlace de datos de Android no funciona con View 'android: tag' property
  • DataBinding con Android Dialog
  • Enlaces de datos con oyentes personalizados en la vista personalizada
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.