我正在使用 UINavigationController。当用户点击后退按钮时,如何在计时器上停止(调用 invalidate 方法)。
问问题
244 次
2 回答
2
我认为您可以使用viewWillDisappear
方法间接检测何时按下后退并使您的计时器无效
于 2012-12-30T03:22:12.923 回答
0
//放置这个viewDidLoad并确保你有一个模仿后退按钮的back.png
UIImage *buttonImage = [UIImage imageNamed:@"back.png"];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:buttonImage forState:UIControlStateNormal];
button.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);
[button addTarget:self action:@selector(backPressed:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *customBarItem = [[UIBarButtonItem alloc] initWithCustomView:button];
self.navigationItem.leftBarButtonItem = customBarItem;
- (void)backPressed:(id)sender {
[yourTimer invalidate];
}
如果计时器在另一个类中运行,则使用 NSNotificationCenter 在 backPressed 方法中发布通知
请参阅此处的 NSNotification 中心示例NSNotification 教程
于 2012-12-30T03:20:20.940 回答