Пустой экран для вкладки iOS 5 после закрытия модального окна и возврата из фона после предупреждения о памяти

  1. Запустите приложение с вкладками с помощью симулятора или устройства iOS 5.
  2. Вызов модального диалога
  3. Предупреждение об имитации памяти (для устройств перейдите к некоторым приложениям, интенсивно использующим память)
  4. Переключитесь на другое приложение (если вы еще этого не сделали)
  5. Вернитесь в приложение
  6. Закрыть диалог

Вы увидите пустой экран (окно). Тестовый проект для демонстрации этой ошибки/проблемы: http://github.com/chetanpungaliya/iOS-5-TestModal


person cpungaliya    schedule 09.11.2011    source источник
comment
Вы когда-нибудь решали это? Я тоже только что столкнулся с этим.   -  person XJones    schedule 11.01.2012


Ответы (2)


Я сам столкнулся с этим сегодня и не могу найти никакого объяснения, кроме того, что это ошибка iOS 5. После небольшого взлома я нашел обходной путь. Прежде чем закрыть модальный контроллер представления, измените tabBarController.selectedIndex на другой индекс контроллера представления, а затем вернитесь обратно.

Вы можете увидеть это в клоне вашего проекта по адресу https://github.com/xjones/iOS-5-TestModal. Я также отправил это вам в качестве запроса на включение.

РЕДАКТИРОВАТЬ: добавлен отчет openradar

Кто-то также разместил это на openradar: http://openradar.appspot.com/10529236

person XJones    schedule 11.01.2012
comment
Да, это сработало и для меня. Все еще жду ответа от поддержки разработчиков Apple по этому вопросу. - person cpungaliya; 07.02.2012

У меня тоже была такая же проблема, и я исправил ее. Проблема в том, что розетки, которые мы подключаем через xib, установлены в nil в методе viewDidUnload. Этот метод вызывается для всех представлений, которые в данный момент не видны, когда возникает предупреждение о памяти. Когда мы возвращаемся к этим представлениям, их метод viewDidLoad вызывается снова. Единственный способ исправить это — удалить методы setNil из viewDIdUnload в метод Dealloc, и все будет работать нормально.

person arundevma    schedule 25.01.2013