0

UINavigationController を使用しています。ユーザーが戻るボタンを押したときにタイマーを停止する (invalidate メソッドを呼び出す) にはどうすればよいですか。

4

2 に答える 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 Center の例を参照してくださいNSNotification チュートリアル

于 2012-12-30T03:20:20.940 に答える