Почему приложение для iPhone частично запоминает состояние пользовательского интерфейса? - PullRequest
0 голосов
/ 20 сентября 2010

Я сделал небольшое тестовое приложение с кнопкой и UISlider.Касание кнопки меняет текст метки.Я добавил свойства IBOutlet для обоих элементов управления.Я освобождаю все свойства в viewDidUnload, а также устанавливаю их равными nil в dealloc.

Теперь интересно: я нажимаю кнопкуЕго тег изменяется с «0» на «1», а его текст обновляется: tag == 1 -> «B», tag == 0 -> «A».Таким образом, текст говорит «Б» сейчас.Затем я закрываю приложение (домашняя кнопка iPhone) и перезапускаю его.Все еще кнопка говорит "B"!Как это возможно?Приложение не прервано?

Работает на iOS4.1 здесь на iPhone 4.

René

1 Ответ

2 голосов
/ 20 сентября 2010

Ты прав. Приложение не завершено. В iOS 4 приложения приостанавливаются при нажатии кнопки «Домой». Когда вы «перезапускаете» приложение, оно просто перемещается на передний план. Вот почему состояние вашего приложения не меняется. Примечание. После приостановки приложения могут быть закрыты ОС без уведомления, поэтому обязательно сделайте все свои сохранения до того, как приложение будет приостановлено, например, в applicationDidEnterBackground:.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...