Intereting Posts
Почему NSIndexPath indexPathForItem возвращает недопустимый путь? Могу ли я добавить составной индекс, который включает первичный ключ таблицы при использовании Core Data с хранилищем поддержки SQLite? Как добавить кнопку «Готово» к клавиатуре iOS Боковые скользящие вкладки в приложении iPhone / iPad UIPickerView Не отображает данные в подборщике, но отображается в nslog iOS: почему layoutIfNeeded вызывает traitCollectionDidChange? (AutoLayout) Почему мой NSMutableArray «наполовину мертв» в cellForRowAtIndexPath? Создание текстовых полей на основе ввода пользователем Столбцы SQLite DateTime принимают любое значение … нормально? Что означает просмотр приложений и приложений в App Store из магазина приложений Apple? Загрузка обновления приложения с помощью другого идентификатора Сотовые ссылки Apple Map Map – примеры схем URL Поместите плавающий UIButton поверх UICollectionView Swift: обратный вызов делегата / протокола XCTest (тест модуля) Не удалось вызвать вызов SSPI, см. Внутреннее исключение. контекст истек и больше не может использоваться

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

В таких приложениях, как 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. }];