Por el momento me limité a definir algunos strings en dos archivos de recursos, uno en inglés y otro en español.
Para probar el funcionamiento, agregué un ítem de menú en el Flyout para intercambiar entre idiomas, y desde allí se envía un mensaje multicast con el MessagingCenter:

Tan simple como ejecutar una línea de código:
MessagingCenter.Send<AppShell>(this, "LanguageChanged");
Y luego, desde cada clase que se desee, hay que suscribirse para recibir ese mensaje:
MessagingCenter.Subscribe<AppShell> (this, "LanguageChanged", (sender) =>
{
//ApplyLanguage();
});
Muy limpio, efectivo, fácil de implementar. Hermoso.
No hay comentarios:
Publicar un comentario