Enlace a facebook.
digitalDot diseño webLogo Diseño Web digitalDot

Cómo evitar que cambie el tamaño de los textos en una App

Cómo evitar que cambie el tamaño de los textos en una App
Escrito por Digitaldot
1 de octubre de 2020
Tiempo de lectura 5 min

Si estás diseñando una aplicación móvil para Android, esta información te interesa conocerla.

Como todos sabemos, Google da la posibilidad, desde los ajustes de sus dispositivos Android, de ajustar el tamaño de la fuente de todos los textos del sistema.

Normalmente, este ajuste se deja en el valor por defecto, pero en ocasiones, sobre todo en personas con dificultad visual, este ajuste se aumenta.

¿En que nos afecta a nosotros como desarrolladores de aplicaciones móviles esta funcionalidad?

Pues bien, a la hora de desarrollar una aplicación nativa Android cuando diseñamos la aplicación para hacerla responsive, para todos los tamaños de pantalla, podemos encontrarnos con el inconveniente de que el ajuste mencionado de tamaño de fuente nos puede afectar a todas las fuentes de nuestra aplicación.

De tal forma, que todo el esfuerzo realizado en hacer nuestra aplicación responsive para cualquier dispositivo puede ser inútil para estas personas que aumentan el tamaño general de las fuentes en sus dispositivos.

Normalmente, y sobre todo si tenemos un buen diseño previo de nuestra aplicación, todos los textos están pensados para que ocupen un espacio suficiente para que cualquier persona pueda leerlos. Por lo que lo más normal es que no queramos que nuestros textos varíen según el valor de este ajuste nativo en Android.

 

¿Cómo evitar que varíe el tamaño de los textos de una app Android?

Pues bien, lo forma más básica es utilizando la medición “dp” en nuestros layout de diseño.

Si habéis trabajado con Android Studio ya habréis visto más de una vez que cuando usas la medición “dp” para indicar el tamaño de fuente en un TextView (que es el elemento básico de texto) nos indica que no es recomendable usar esa medición y nos aconseja usar en su lugar la medición “sp”.

Pues bien, es cuando usamos “sp” cuando dichos textos se ven afectados por la variación de tamaño de fuente del ajuste nativo en Android y, sin embargo, al usar “dp” esto no ocurre.

En definitiva, si queremos que el tamaño de nuestros textos sea independiente a este ajuste debemos usar la medición “dp”.

De esta manera logramos “solucionar” este problema, y lo pongo entrecomillado porque en realidad esta solución puede verse frustrada y no sernos útil si en algún momento cambiamos el tamaño de la fuente de un TextView mediante código.

Diseño de aplicaciones móviles. digitalDot

¿Por qué ocurre esto?

El hecho es que cuando cambiamos el tamaño de la fuente de un TextView mediante código, el método en cuestión (setTextSize) por defecto trabaja con la medición de “sp” por lo que, aunque el elemento esté definido con “dp” al usar este método vuelve a ser “sp”.

Esto lo podemos intentar solucionar indicándole al método la unidad de medida que queremos usar utilizando la constante “TypedValue.COMPLEX_UNIT_DIP”.

Si aún así, nuestros textos siguen variando su tamaño en correspondencia al valor del ajuste de Android. Podemos forzar a que no tenga en cuenta este valor añadiendo en la primera Actividad que se ejecute en nuestra aplicación la línea:

adjustFontScale(getResources().getConfiguration());
Con la siguiente implementación:
public void adjustFontScale(Configuration configuration)
{
configuration.fontScale = (float) 1.0;
DisplayMetrics metrics = getResources().getDisplayMetrics();
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
wm.getDefaultDisplay().getMetrics(metrics);
metrics.scaledDensity = configuration.fontScale * metrics.density;
getBaseContext().getResources().updateConfiguration(configuration, metrics);
}

Este método, lo que hace es básicamente coger la configuración que le llega desde los ajustes de Android y cambiar el escalado de la fuente (que es el ajuste del que estamos hablando) a su valor por defecto (1.0)

Esta solución es la última que debemos probar pues es la más invasiva.

Esperamos que esta información os haya resultado útil. Si tenéis dudas a la hora de desarrollar cualquier app, podéis contactar con el equipo de diseño de aplicaciones móviles de digitalDot que estará encantado de echaros una mano.

Tamaño de letra en app Android. digtialDot


También puede interesarte:

Noticias relacionadas sobre Aplicaciones Móviles

Cómo desarrollar aplicaciones móviles seguras desde el diseño

Cómo desarrollar aplicaciones móviles seguras desde el diseño

Hoy en día, las aplicaciones móviles y web son el canal principal de interacción con los usuarios, por lo que la seguridad no puede tratarse como una capa adicional. Hoy, desarrollar software seguro implica integrar la protección desde las primeras decisiones de diseño. En digitalDot trabajamos bajo un enfoque de…

Cómo ofuscar código en Android

Cómo Ofuscar código en Android

La ofuscación de código es una técnica importante para proteger tus aplicaciones móviles contra la ingeniería inversa y mejorar la seguridad de tu software. Desde digitalDot, te mostraremos cómo puedes ofuscar tu código en Android usando ProGuard y otras herramientas. Inicio del proceso de ofuscación A la hora de compilar…

Novedades sobre Android 14

Android 14: novedades para los desarrolladores de apps móviles

El lanzamiento de Android 14, originalmente programado para el martes 5 de septiembre de 2023, ha experimentado un aplazamiento hasta el próximo mes de octubre. Esta nueva fecha coincidirá con el evento de presentación del esperado Pixel 8, junto con el lanzamiento del flamante Pixel Watch 2, el reloj inteligente…

Estadísticas 2023 sobre aplicaciones móviles para tiendas online

Estadísticas 2023 sobre aplicaciones móviles para tiendas online

¿Estás pensando en tener una aplicación móvil para tu tienda online? ¿No lo has pensado todavía porque no te termina de convencer? El pasado miércoles 19 de julio, AppsFlyer publicó el informe “The State of eCommerce App Marketing”, un análisis profundo de las tendencias de la industria mundial para orientar…

¿Cómo crear una app de éxito?

¿Cómo crear un App de éxito?

Actualmente, miles de personas incorporan las aplicaciones móviles a sus rutinas por lo que, cada vez, están más integrados en nuestros hábitos diarios.Los investigadores MTM y Google han desarrollado un modelo para empresas, que les informa de cómo crear una “app exitosa”. Hablemos de ello. Poder integrar una App por…

Garantías para tiendas online y Apps

Garantías para tiendas online y APP de digitalDot

El 1 de enero del presente año (2022) entró en vigor una nueva normativa que afecta a la garantía legal de cualquier tipo de productos digitales, incluidas las garantías para tiendas online o aplicaciones móviles. digitalDot, como empresa de desarrollo de software debemos aplicar esta nueva normativa principalmente en algunas…

Desarrollo app Firebase - digitalDot

Acelera el desarrollo de tus apps con el marco de Firebase

Google nos trae nuevas características en su marco de desarrollo Firebase con lo que los desarrolladores podrán disminuir los tiempos de producción de sus aplicaciones. Firebase es una plataforma que fue creada por Google en 2014 para el desarrollo de aplicaciones web y móviles. Se encuentra integrada con Google Cloud…

Posicionamiento de aplicaciones móviles

¿Cómo posicionar una aplicación móvil?

Si estás leyendo este artículo es porque o tienes una app o estás a punto de tenerla y quieres saber cómo aparecer por encima del resto de aplicaciones móviles. En digitalDot, además de diseñar apps para Android y para iOS, os ayudamos a posicionarlas. En esta ocasión os vamos a…

Añadir Política de privacidad en la app Play Store

Cómo añadir la política de privacidad en nuestra App Play Store

Hace unos meses Google anunció una nueva normativa por la cual se obliga a incluir la política de privacidad a todas las aplicaciones a partir de abril de 2022. Este es un cambio ya hemos vivido como agencia de desarrollo web y software en el desarrollo de páginas, pero ahora…

1 2 3 6
crossmenuchevron-down