Saltar al contenido principal

Escalado de fuente no lineal de Android 14 habilitado

La nueva función de escalado de fuente no lineal de Android 14 está habilitada en Flutter a partir de la versión v3.14.

Resumen

#

Android 14 introdujo el escalado de fuente no lineal de hasta el 200%. Esto puede cambiar el aspecto de tu aplicación cuando el usuario cambie el escalado de texto de accesibilidad en las preferencias del sistema.

Contexto

#

La función de escalado de fuente no lineal de Android 14 evita el escalado excesivo de las fuentes de accesibilidad al escalar el texto más grande a un ritmo menor cuando el usuario aumenta el valor de escalado de texto en las preferencias del sistema.

Guía de migración

#

Como sugiere la descripción general de características de Android 14, prueba tu interfaz de usuario con el tamaño de fuente máximo habilitado (200%). Esto debería verificar que tu aplicación puede aplicar los tamaños de fuente correctamente y puede adaptarse a tamaños de fuente más grandes sin afectar la usabilidad.

Para adoptar el escalado de fuente no lineal en tu aplicación y Widgets personalizados, considera migrar de textScaleFactor a TextScaler. Para aprender cómo migrar a TextScaler, consulta la guía de migración Deprecate textScaleFactor in favor of TextScaler .

Temporarily Opting Out

Para desactivar el escalado de texto no lineal en Android 14 hasta que migres tu aplicación, agrega un MediaQuery modificado en la parte superior del árbol de Widgets de tu aplicación:

dart
runApp(
  Builder(builder: (context) {
    final mediaQueryData = MediaQuery.of(context);
    final mediaQueryDataWithLinearTextScaling = mediaQueryData
      .copyWith(textScaler: TextScaler.linear(mediaQueryData.textScaler.textScaleFactor));
    return MediaQuery(data: mediaQueryDataWithLinearTextScaling, child: realWidgetTree);
  }),
);

Esto usa la API desaconsejada textScaleFactor. Dejará de funcionar una vez que esa API se elimine de la API de Flutter.

Timeline

#

Introducido en la versión: 3.14.0-11.0.pre
En la versión estable: 3.16

Referencias

#

Documentación de la API:

Issues relevantes:

PRs relevantes:

Ver también: