No, no es posible utilizar variables en función de código en archivos XML. Sin embargo, puedes usar estilos para esto.
Ejemplo:
<style name="MyTvStyle">
<item name="android:textSize">40sp</item>
</style>
luego aplicarlo como esto: enfoque basado
<TextView style="@style/MyTvStyle" ... />
Un código también es posible. Si TextViews tiene su atributo android:id
definido, puede recuperarlos en el código con el método findViewById
.
Ejemplo:
int[] id_array = {
R.id.textview1, R.id.textview2, R.id.textview3 //Put all the id's of your textviews here
}
for(int i : id_array) { //Loop trough all the id's and retrieve the Textview associated with it.
TextView textview = (TextView)findViewById(i);
tv.setTextSize(TypedValue.COMPLEX_UNIT_SP,40); //Set the text size to 40sp
}
Y sí, siempre es mejor usar sp
en lugar de los valores normales de píxeles. Dado que sp
se escalará con el tamaño del dispositivo y la configuración del usuario.
Gracias. Ni siquiera sabía sobre estilos. – tomofv