Cómo pasar varios objetos entre el destino de los fragmentos cuando se utiliza la Navegación y el Componente de enlace de datos?
He conseguido pasar de un objeto a partir de un fragmento a otro cuando use el enlace de datos. Este es mi archivo de diseño:
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<data class="ItemDataBinding">
<variable
name="item"
type="com.example.myapp.Item" />
</data>
//Views of ItemsFragment
</layout>
Y este es mi código:
action = actionItemsFragmentToItemFragment();
action.setItem(clickedItem);
Navigation.findNavController(rootView).navigate(action);
Como se puede ver, puedo llamar a setItem()
método como se define en mi archivo de diseño. Sin embargo, si puedo agregar otra variable en el mismo archivo de diseño:
<variable
name="shop"
type=type="com.example.myapp.Shop"/>
Y volver a generar el proyecto, no hay ninguna setShop()
método disponible, así que puede pasar a otro objeto a la siguiente fragmento. ¿Cómo puedo solucionar esto? Gracias
Vea otras preguntas sobre etiquetas android android-fragments android-databinding android-architecture-components android-architecture-navigation