Intereting Posts
Самый оптимальный метод реализации отображаемых форм? Найдите источник для __lldb_unnamed_function4866 $$ ProjectName UISearchBar не отображает кнопку Отмена при добавлении в качестве подсмотра в UINavigationBar swift – Можно ли сравнить Any.Type? Какой объект / элемент управления используется для прокрутки по горизонтали в приложении Apple Watch? Xcode не может создавать файл IPA Закрепление SSL – установка закрепленных открытых ключей вместо закрепленных сертификатов в AFSecurityPolicy Данные привязки RxSwift к утечке памяти UIButton Передача уровня сложности между контроллерами Как контролировать передачу молчания IOS A2DP после паузы AVRCP? Как реализовать трансляцию в приложении iOS для потокового видео на Apple TV Как подклассифицировать UILabel? Импорт заголовка дважды: дубликат символа для архитектуры x86_64 Использование статической переменной для ссылки на экземпляры класса в Objective C? iOS Attributed Text Установка всей строки при редактировании конца

Вызов метода, когда приложение вызывается из фона

В таких приложениях, как Foursquare, когда я нажимаю кнопку «Домой», приложение переходит в фоновый режим. Затем, когда я нажимаю на значок, он загружает содержимое на экране.

Когда я отправляю свое приложение на задний план, а затем возвращаю его обратно, он не загружает содержимое на экран. Я ввел свой код в метод viewDidAppear но он не выполняется.

Как можно загружать контент приложения, когда он становится активным?

Вам необходимо ответить на - (void)applicationDidBecomeActive:(UIApplication *)application или - (void)applicationWillEnterForeground:(UIApplication *)application или эквивалентные уведомления UIApplication . UIViewController цикл UIViewController называемый viewDidAppear , не запускается переходами жизненного цикла приложения.

Предложение smparkes является правильным. Вы можете зарегистрироваться для UIApplicationDidBecomeActiveNotification или UIApplicationWillEnterForegroundNotification . Эти уведомления вызывается после вызова метода (который написаны smparkes). В обработчике этого уведомления сделайте то, что вы хотите. Например, в viewDidLoad для вашего контроллера зарегистрируйте следующее уведомление:

 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doUpdate:) name:UIApplicationDidBecomeActiveNotification object:nil]; 

Не забудьте удалить в dealloc :

 [[NSNotificationCenter defaultCenter] removeObserver:self]; 

Наконец, метод doUpdate может быть следующим:

 -(void)doUpdate:(NSNotification*)note { // do your stuff here... } 

Я предлагаю вам прочитать ссылку на класс UIApplicationDelegate . В частности, прочитайте о изменениях состояния мониторинга приложения .

Надеюсь, поможет.

Предположим, вы хотите прослушать UIApplicationDidBecomeActiveNotification, вот код ObjC, который может вам помочь.

 [[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationDidBecomeActiveNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) { // custom code goes here. }];