Diferencia entre android: y app: prefix en Android XML?

¿Cuál es la diferencia y, lo que es más importante, la necesidad de tener diferentes prefijos en XML de vista de Andriod?

Por ejemplo,

<android.support.v7.widget.Toolbar android:id="@+id/actionToolBar" android:layout_width="match_parent" android:layout_height="wrap_content" android:contentInsetEnd="20dp" app:contentInsetEnd="20dp" android:elevation="3dp" /> 

Tiene contentInsetEnd tanto para android como para la app .

android se utiliza generalmente para el atributo que viene del androide SDK sí mismo.

Se utiliza a menudo si está utilizando la biblioteca de soporte.

También puede ver otros espacios de nombres si utiliza vistas personalizadas (de su cuenta o forma una biblioteca).

Aquí hay más información: http://developer.android.com/training/custom-views/create-view.html#customattr

app es sólo un espacio de nombres para cualquier parámetro personalizado para una vista personalizada.

Esto puede ser cualquier cosa pero si ves el elemento raíz hay probablemente una línea xmlns:app="http://schemas.android.com/apk/res-auto" que asigna el espacio de nombres.

App namespace se utiliza para los atributos personalizados definidos, que por lo general se definen en /values/attrs.xml continuación, se muestra una muestra de dicho archivo

 <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="SimpleTabIndicator"> <attr name="numberOfTabs" format="integer"/> <attr name="indicatorColor" format="color"/> </declare-styleable> </resources> 

Y un ejemplo de uso sería

 <com.someapp.demo.SimpleTabIndicator android:id="@+id/tabIndicator" android:layout_width="match_parent" android:layout_height="2dp" android:background="#26292E" app:indicatorColor="#FFFDE992" app:numberOfTabs="5"/> 

El espacio de nombres de Android que utilizas para los widgets de Android y los controles de interfaz de usuario.

  • ¿Por qué Lint muestra advertencia cuando se utiliza en unidades de (pulgadas) o mm (milímetro) como dimensión?
  • No puedo ver el diseño gráfico de Android en NetBeans
  • EditText en un tableRow cómo fijar el 100%
  • Práctica recomendada para la presentación dos vistas de texto en una fila
  • Lista expandible dentro de scrollview
  • Colores hexagonales en Android son algunas veces 8 dígitos. ¿Cómo? ¿Cuál es la diferencia entre #FFFFFF y # FFFFFF00
  • TextInputLayout: ¿Cómo dar relleno o margen para sugerir?
  • La función de arrastrar / soltar en el estudio de Android no funciona
  • Android: cómo cambiar layout_x, layout_y en un AbsoluteLayout dinámicamente?
  • Evita que las palabras se dividan en Android TextView
  • Cómo puedo cambiar la alineación de las vistas secundarias de la barra de herramientas
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.