Методы моего корневого viewController viewWillDisappear, viewWillUnload viewDidUnload
никогда не вызываются (в каждом из них содержатся операторы журнала).
Похоже, что это уже было здесь, но ответы не совсем ясны.Похоже, это подразумевает, что представление viewController должно быть встроено в UINavigationController
, что кажется странным, а не то, что я видел, упомянутое где-либо еще.
viewWillDisappear и viewDidDisappear никогда не вызывают
Если это так, где еще я могу выполнить некоторую очистку и обеспечить сохранение изменений в UIDocument?
РЕДАКТИРОВАТЬ: Угадаю, я неправильно понял @ как события root viewControllerработа (это уникальный статус и т. д.).Посмотрим на методы AppDelegate.Просто пытаюсь убедиться, что мой материал UIDocument сохранен, а также, что мой материал Core Audio закрывается правильно.
Закрыть: Закончилось добавлением уведомлений, опубликованных AppDelegate.Кажется, работает довольно хорошо + простые вещи после того, как вы сделаете это один раз.
// из appDelegate
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[[NSNotificationCenter defaultCenter] postNotificationName: @"handleCleanup"
object: nil
userInfo: nil];
}
и мой VC регистрируется для уведомления:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(saveAndCleanup)
name: @"handleCleanup"
object: nil];