在我的应用程序中有两个场景。在第一个视图控制器中我使用了uialertview,它会在30秒后弹出。如果我在30秒之前移动到下一个场景意味着,第一个场景的UiAlertview不应该弹出。
答案 0 :(得分:3)
使用计时器,当你处于消失的视图时,取消计时器:
self.myTimer = [NSTimer scheduledTimerWithTimeInterval:1.0f
target:self
selector:@selector(showPopUp)
userInfo:nil
repeats:YES];
然后:
-(void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.myTimer invalidate];
}
答案 1 :(得分:0)
将Timer变量作为全局
NSTimer *Timer;
Timer = [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(showAlert) userInfo:nil repeats:YES];
-(void)showAlert
{
//show your alert view;
}
使用viewWillDisappear
方法禁用您的计时器,以防止您在下一个viewcontroller中时显示警报
-(void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[Timer invalidate];
}