Iterar a través de vistas en un diseño y cambiar la tipografía
Me pregunto si hay una manera de iterar a través de todas las vistas en una disposición y de cambiar la tipografía de todas las vistas que tienen texto (es decir, TextView, CheckBox, EditText, etc). Tengo un diseño que llamo setContentView () y me preguntaba si hay una manera fácil de hacer esto.
Podría pasar y manualmente hacerlo usando findViewById (), pero prefiero tener una manera fácil de iterar a través de ellos en su lugar.
- ¿Cómo puedo reconocer qué área de una imagen (no sólo las coordenadas) se ha tocado en Android?
- Efecto del carrusel de Android con diseños
- Cambio de vista dentro de TabHost (una actividad, varias vistas)
- Cómo configurar Tint en NavigationView a algunos iconos
- Android - Cómo saber si una vista superpone otra vista en RelativeLayout
Gracias, -clark-
- Android: View.setID (int id) de forma programática - ¿cómo evitar conflictos de ID?
- Android - Creación de listview con encabezados flotantes
- Stream de video de autorrotación TextureView en Nexus4 (pero no en Galaxy S4)
- Cómo configurar el color de fondo de una vista
- Gallery ImageAdapter convertView siempre es nulo
- ¿Cómo crear un semicírculo transparente?
- Android: Cómo realizar cambios en la vista principal de un botón
- No se puede resolver el símbolo 'NavigationView'
Tal vez esto le ayudará a comenzar:
protected void changeFonts(ViewGroup root) { Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/comicsans.ttf"); for(int i = 0; i <root.getChildCount(); i++) { View v = root.getChildAt(i); if(v instanceof TextView ) { ((TextView)v).setTypeface(tf); } else if(v instanceof Button) { ((Button)v).setTypeface(tf); } else if(v instanceof EditText) { ((EditText)v).setTypeface(tf); } else if(v instanceof ViewGroup) { changeFonts((ViewGroup)v); } } }
- ¿Cómo determinar el tipo de un extra en un paquete mantenido por intención?
- Android byte array to Bitmap Cómo