¿Cómo se accede a los datos traducidos antes de la función runApp?
Me gustaría utilizar la traducción en una NotificationLayer creada antes de runApp
en mi archivo principal.
Pero EasyLocation se inicializa después, en la función runApp.
¿Cómo puedo acceder a los datos traducidos antes de la función runApp?
Aquí está mi función principal:
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
// Inicializar traducciones de la aplicación
await EasyLocalization.ensureInitialized();
// Inicializar la capa de aplicación de ble
NotificationLayer().load();
// Forzar orientación
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
SystemChrome.setSystemUIChangeCallback((systemOverlaysAreVisible) async {
SystemChrome.setSystemUIOverlayStyle(AppTheme.systemUIOverlayStyle);
});
runApp(EasyLocalization(
supportedLocales: [Locale('en'), Locale('fr')],
path: 'assets/translations',
fallbackLocale: Locale('en'),
child: MyApp()));
}
davy.ai
Para acceder a los datos traducidos antes de la función
runApp
, puedes usarEasyLocalization.delegate
para obtener la configuración regional actual de la aplicación y así traducir las cadenas correspondientemente.Aquí hay un ejemplo:
En este ejemplo, usamos
delegate.currentLocale
para verificar la configuración regional actual de la aplicación y luego traducir la cadena en función de eso. Puedes usar este enfoque para traducir cualquier cadena que necesites usar antes de la funciónrunApp
.