Изменить часовой пояс приложения по умолчанию в Swift - PullRequest
0 голосов
/ 21 февраля 2020

Я использую вид выбора для выбора нового часового пояса, и здесь я устанавливаю новый часовой пояс по умолчанию для приложения:

 if let local = selectedTimeZone {
     let timeZone = TimeZone(identifier: local)
     NSTimeZone.default = timeZone!
 }

здесь, например, selectedTimeZone равно "America/Chicago"

И когда открывается эта страница, я читаю значение часового пояса по умолчанию и показываю его как выбранный часовой пояс:

  if let index = timeZone.firstIndex(where: { $0.zoneName == NSTimeZone.default.identifier }) {
     pickerViewField.textField.text = timeZone[index].zoneName
  } 

Когда выбран новый часовой пояс, он работает и приложение, пользователь может go вокруг, и когда пользователь открывает настройку, метка представления выбора показывает новый часовой пояс. Но когда я полностью закрываю приложение и открываю его снова, часовой пояс возвращает часовой пояс устройства по умолчанию, а не новый, выбранный в приложении.

Теперь мой вопрос; мне нужно где-то хранить новое значение часового пояса, и когда приложение открывается, я сначала устанавливаю новое значение заново? Или в моем коде что-то не так?

Большое спасибо

...