Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

258
Vistas
¿Cómo obtener el idioma actual del dispositivo si se cambió después del inicio de la aplicación?

Cuando inicia la aplicación, hay muchas formas de obtener el idioma actual del dispositivo:

  • CultureInfo.CurrentCulture
  • CultureInfo.CurrentUICulture
  • CultureInfo.DefaultThreadCurrentCulture
  • CultureInfo.DefaultThreadCurrentUICulture
  • Thread.CurrentThread.CurrentCulture
  • Thread.CurrentThread.CurrentCulture

Pero si cambio el idioma del dispositivo mientras se ejecuta la aplicación, ninguno de esos valores se actualizará.

¿Existe una forma universal de obtener el idioma actual del dispositivo o necesito escribir código para cada plataforma de forma independiente?

  • Android: CultureInfo.GetCultureInfo(Locale.Default.ToString().Replace('_', '-'))
  • iOS: CultureInfo.GetCultureInfo(NSLocale.CurrentLocale.LocaleIdentifier.Replace('_', '-'));
  • UWP: CultureInfo.GetCultureInfo(GlobalizationPreferences.Languages[0].ToString())
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Cada plataforma debe proporcionar una notificación cada vez que el usuario cambie la ubicación o el idioma del dispositivo. Por ejemplo, iOS envía una NSCurrentLocaleDidChangeNotification que incluye una propiedad de idioma.

Deberá registrarse y observar las notificaciones de la plataforma mediante el procedimiento de notificaciones locales de Xamarin.Forms , que indica (negrita y cursiva añadidas):

Cada plataforma maneja la creación, visualización y consumo de notificaciones locales de manera diferente. Este artículo explica cómo crear una abstracción multiplataforma para enviar, programar y recibir notificaciones locales con Xamarin.Forms.

  • Crear una interfaz multiplataforma

  • Consumir la interfaz en Xamarin Forms

  • Crear y manejar una implementación de interfaz de Android

  • Crear y manejar una implementación de interfaz de iOS

Hay una serie de tutoriales sobre cómo hacer esto. Busque en los formularios de xamarin el tutorial de consumo de notificaciones locales para encontrar algunos. Nótese el término local . No quieres notificaciones automáticas, eso es otra cosa.

Para realizar esta tarea de manera más sencilla, es posible que pueda usar un complemento , como edsnider/localnotificationsplugin en GitHub . Puede encontrar más si reemplaza los términos consumir tutorial con complemento en su búsqueda.

Aclaración :

  • las notificaciones locales se producen dentro del dispositivo, es decir, el dispositivo o las aplicaciones envían notificaciones internamente para que las consuman las aplicaciones del dispositivo.
  • Las notificaciones push se producen cuando se realiza una solicitud a un servicio externo, como Azure. Ese servicio luego transmitiría una notificación correspondiente a los dispositivos apropiados.
over 4 years ago · Santiago Trujillo Denunciar

0

Por favor, inténtalo

 Java.Util.Locale currentLanguage = this.Resources.Configuration.Locales.Get (0);

Estoy usando esta llamada en Xamarin Android y funciona bien para mí. "esto" está en la clase Android.App.Activity.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda