DataBindingUtil.inflate y ver vinculante Inflar
Puede utilizar el enlace de datos o el enlace de vista para aumentar la vista de su fragmento. ¿Cuál debo usar?
Si enciendes dataBinding
En tu build.gradle
, Lo más probable es que utilice «Diseño de enlace de datos«.
Como se mencionó en el artículo anterior aquí, Cuándo» Diseño de enlace de datos«Usado,
viewBinding
Se crea automáticamente.Por lo tanto, no es necesario establecer explícitamenteviewBinding true
dentrobuild.gradle
documento.
Entonces tienes 2 formas de aumentar la vista de tu fragmento onCreateView()
-Método de enlace de datos y método de enlace de vista.
FragmenMainBinding
Es la clase de enlace de vista.Para inflar la vista de fragmentos, debe pasar LayoutInflater
, layoutId
, padres ViewGroup
, attachToParent
bandera.
val binding: FragmenMainBinding = DataBindingUtil.inflate(
inflater, R.layout.fragment_main, container, false)
¡Bueno, es genial!Veamos la segunda forma de usar el enlace de vista
¡Es aún más sencillo!Solo necesitas pasar en uno LayoutInflater
Alcance.
val binding = FragmentMainBinding.inflate(inflater)
Es obvio El método de vinculación de la segunda vista es mejor.Puede trabajar con dataBinding true
o viewBinding true
En tu build.gradle
documento.
Entonces por que y cuando DataBindingUtil.inflate()
¿Es necesario entonces?Bueno, si miras la documentación oficial aquí, Afirma
Esta versión solo se usa cuando el layoutId no se conoce de antemano. De lo contrario, utilice el método de inflado del enlace generado para garantizar una expansión de tipo seguro.
Mi siguiente pregunta es bajo qué circunstancias layoutId
¿Es desconocido? No tengo una respuesta, porque no tengo tal caso de uso, ¿verdad?
DataBindingUtil.inflate
En la mayoría de los casos, no se necesitan métodos de enlace de datos. En su lugar, debe utilizarse el método de inflado de enlace de vista.