¿Cuál es la diferencia entre llamar a LayoutInflater directamente y no?

Fui a través de algunos tutoriales, y en el Doc Android, se dice no acceder a LayoutInflater directamente al instanciarlo. Ejemplo de Google Doc:

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

El tutorial que he estudiado es éste:

 LayoutInflater inflater = LayoutInflater.from(parent.getContext()); 

Así que lo que realmente no entiendo es lo que la diferencia es además el código diferente obvio. Cualquier explicación muy apreciada. Supongo que el Android Doc debe ser el que seguimos, pero no estoy seguro si hace una diferencia.

2 Solutions collect form web for “¿Cuál es la diferencia entre llamar a LayoutInflater directamente y no?”

Si abre la fuente de Android, puede ver que el método LayoutInflator.from se ve así:

 /** * Obtains the LayoutInflater from the given context. */ public static LayoutInflater from(Context context) { LayoutInflater LayoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); if (LayoutInflater == null) { throw new AssertionError("LayoutInflater not found."); } return LayoutInflater; } 

Eso significa que las dos líneas de código en su pregunta hacen lo mismo. No estoy seguro de lo que el tutorial que lee dice exactamente, pero no veo ninguna diferencia en la funcionalidad. Usar el método from es bueno ya que requiere un poco menos de mecanografía, eso es todo.

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

Usted está recibiendo el LayoutInflater Service Provider desde System Manager

 LayoutInflater inflater = LayoutInflater.from(parent.getContext()); 

Está utilizando static método static de la LayoutInflater Class

Yo diría que la diferencia está sólo en el código y cómo se escribe esto también pila de llamadas, pero el resultado es el mismo – se obtiene LayoutInflater .

Más sobre esto

Saludos

  • InflateException en la llamada al método inflater.inflate ()
  • Cómo guardar un diseño hinchado en android después de los cambios de configuración?
  • Línea del archivo XML binario ocasional #XX: Error al inflar la clase <unknown>
  • gancho LayoutInflater y cambiar los valores al inflar las vistas
  • Android.view.InflateException: Línea de archivo XML binario # 7: Error al inflar la clase
  • Infla la vista sin el margen
  • Estoy recibiendo error de inflado de diseño al usar android: textSize = "? Android: attr / textAppearanceLarge" en mi xml
  • ¿Se recomienda comprobar la vista de null con cada llamada findViewById?
  • Problema de LayoutInflater de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.