Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

254
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda