2010-11-06 11 views
8

Estoy creando algunos menús para mi aplicación de Android y en todo hay una vista de texto estándar que se repite 5 veces, solo cambiando la etiqueta de android: texto cada vez, todo lo demás es igual.Reutilizar el código de TextView en Android XML

Hay un buen número de propiedades en esto y se siente muy ineficiente copiar/pegar todo esto para cada una de las textviews.

¿Hay alguna forma de definir las propiedades comunes solo una vez y agregarlas a cada elemento TextView?

Respuesta

19

Sí, puede definir un estilo. Cree un archivo en sus valores res carpeta nombres styles.xml y agregue algo como esto:

<resources> 
    <style name="my_header_text"> 
     <item name="android:textStyle">bold</item> 
     <item name="android:textSize">18sp</item> 
     <item name="android:textColor">@android:color/white</item> 
    </style> 
</resources> 

Esto define el estilo. En su diseño, puede tener un campo como este:

<TextView 
    android:id="@+id/my_title" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    style="@style/my_header_text" 
    android:layout_centerVertical="true" 
    android:layout_marginLeft="5dip"/> 

Observe que la declaración de estilo se refiere al estilo definido anteriormente. Los estilos pueden contener casi cualquier propiedad. Read up on them here.

+0

Respuesta perfecta, gracias :) –