Pros y contras, mantenimiento de referencias estáticas a Typeface para su reutilización a través de diseños?
Siempre estoy buscando maneras de mejorar mis habilidades de desarrollo de Android … De ahí esta pregunta.
¿Usted prevé posibles inconvenientes o pros sobre el almacenamiento estático de Typeface para diferentes tipos de letra ya que están siendo utilizados por la aplicación?
- Estado de ahorro en widgets de vista compuesta
- Obtener el valor de color predeterminado de un "EditText" del tema
- ¿Por qué mi página no se muestra en el tamaño correcto en un Android incluso con Viewport / consultas de medios?
- ¿Cómo lo hago solamente paisaje para las tabletas y solamente el retrato para los teléfonos?
- Referencia para buenos patrones de diseño de la interfaz de usuario de Android
Pros:
- Cargue una vez en cualquier lugar.
Contras:
- ¿Se usó más montón?
Mi cacher "TypeFace":
public static synchronized Typeface getFontType (String fontFile) { if (!smTypefaces.contains(fontFile)) { try { Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "fonts/"+fontFile); if (null != tf) { // todo use maybe a weak reference? smTypefaces.put(fontFile, tf); } } catch (RuntimeException e) { e.printStackTrace(); } } return smTypefaces.get(fontFile); }
- Android Studio: Rendering Problems Faltan estilos-tema correcto elegido para este diseño, No se pudo encontrar estilo con id
- El teclado virtual superpone un EditText en un TabHost
- Descargar todas las imágenes de la carpeta en el servidor a local
- Cómo tener una imagen más amplia desplazándose en el fondo
- ¿Por qué se mueven los botones adyacentes al cambiar el tamaño del texto en un botón
- ¿Cómo se utiliza TabItem cuando se coloca en el XML de la disposición?
- Problemas de aplicación de chat en globo
- GridLayout heterogéneo
Hago exactamente eso, y nunca he tenido un problema relacionado de la memoria. He creado una clase llamada FontProvider que perezoso carga un mapa estático donde la clave es una constante de cadena y el valor es la instancia de Typeface. Expongo el mapa mediante un método get (String key) que devuelve null si la clave no está en el mapa.
- ¿Por qué mi AlertDialog no se mostrará cuando se crea en onResume () o onActivityResult ()?
- Disposición de superposición de Android encima de todas las ventanas que recibe toques