Локализация на Swift

У меня два языка для моего приложения. Один английский, а другой китайский.
Когда я выключаю английский язык и нажимаю кнопку «Назад», другие страницы не переводятся на китайский автоматически.
Это меняется только тогда, когда мы открываем страницу, чтобы обновить ее.
Я не знаю, как это происходит.
Пожалуйста, объясните мне, как это реализовать.


person May Phyu    schedule 20.05.2016    source источник


Ответы (1)


Если страницы уже загружены в память, текст метки не будет обновлен, когда вы вернетесь на страницу.

Итак, у инь есть два варианта:

  1. Создайте метод настройки, который будет вызываться, когда viewWillAppear

    • +Easy to implement
    • - Будет называться, даже если нет изменений
  2. Создайте пользовательские компоненты, регистрирующиеся для уведомления. когда вы меняете язык, запускайте уведомление

    • + This will perform action only when required
    • - Немного сложнее реализовать

Вы также можете смешать два из них, разместив уведомление, которое будет вызывать метод setup на всех загруженных контроллерах.

person CZ54    schedule 20.05.2016
comment
Где я должен реализовать этот код viewWillAppear в Language.swift или перед этой страницей просмотра? - person May Phyu; 23.05.2016
comment
Il ll your VC, поэтому второй способ лучше, даже если его сложнее реализовать - person CZ54; 24.05.2016