我想在每次显示 a 时显示整页图像广告UIViewController
。我想我必须在viewDidAppear
or中调用该方法ViewWillAppear
,但它们被调用一次。
- (void) viewDidAppear:(BOOL)animated{
[self showAds];
}
- (void) showAds{
//Do Something
}
每次显示 uiviewcontroller 时我应该怎么做才能调用方法(即使它已经创建)?
我想在每次显示 a 时显示整页图像广告UIViewController
。我想我必须在viewDidAppear
or中调用该方法ViewWillAppear
,但它们被调用一次。
- (void) viewDidAppear:(BOOL)animated{
[self showAds];
}
- (void) showAds{
//Do Something
}
每次显示 uiviewcontroller 时我应该怎么做才能调用方法(即使它已经创建)?
ViewWillAppear
每次UIViewController
显示 a 时都会调用,但在应用返回前台时不会调用。
您可以通过以下代码使用通知来实现您的目标,这种情况特别是当您的应用程序处于后台并且用户按下 HOME 按钮以激活它时。
仅当您的应用程序在 viewDidLoad 中进入 Forground 时注册通知。
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(handleEnteredBackground)
name: UIApplicationDidBecomeActiveNotification
object: nil];
编写应用程序进入Forground时调用的方法
-(void)handleEnteredBackground
{
NSLog(@"%s",__FUNCTION__);
// Your stuff here
}
不要忘记在 viewDidUnload 方法中删除观察者
[[NSNotificationCenter defaultCenter] removeObserver:self];
每次您的应用程序进入Forground 时发布新通知
- (void)applicationWillEnterForeground:(UIApplication *)application
{
[[NSNotificationCenter defaultCenter] postNotificationName:UIApplicationDidBecomeActiveNotification object:nil];
}
每次都应该调用 ViewWillAppear。采用:
- (void) viewWillAppear:(BOOL)animated{
[self showAds];
}