¿Cuál es la diferencia entre los infladores

¿Cuál es la diferencia entre hacer

LayoutInflater inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

Y inflater = LayoutInflater.from(activity);

¿Cuál es la diferencia entre los infladores

La diferencia es que en el segundo ejemplo (a través de un método estático), no es necesario convertir Objeto en LayoutInflater porque devuelve directamente la instancia de LayoutInflater.

El primer caso devuelve generalmente Objeto que debe LayoutInflater explícitamente a LayoutInflater . Pero el resultado de ambos métodos es la nueva instancia de LayoutInflater

Depende de usted qué método va a recoger. Usualmente uso LayoutInflater.from(); Método y nunca tienen problemas. No necesito lanzar del objeto y él hará un truco.

Como se ha mencionado en @CommonsWare, también puede llamar al

 getLayoutInflater() 

Si está en la clase de Activity (es el método de actividad). Pero cuando no estás en Actividad debes tener una variable de Context y luego puedes llamar (por ejemplo desde ListAdapter):

 ((Activity) context).getLayoutInflater(); 

Pero creo que cuando no estás en Activity es mucho más fácil y eficiente llamar LayoutInflater.from(); En lugar de enfoques anteriores.

  • Línea del archivo XML binario ocasional #XX: Error al inflar la clase <unknown>
  • Android.view.InflateException: Línea de archivo XML binario # 7: Error al inflar la clase
  • Disposición incondicional, inflación del adaptador de la visión: Debe utilizar el patrón del sostenedor de la visión
  • Estoy recibiendo error de inflado de diseño al usar android: textSize = "? Android: attr / textAppearanceLarge" en mi xml
  • Android: setContentView () == getViewInflate (). Inflate ()?
  • Infla la vista sin el margen
  • Problema de LayoutInflater de Android
  • ¿Cuál es la forma correcta de obtener el inflador de diseño en Android?
  • ¿Arquitectura de complementos para una aplicación de Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.