0

5 秒後に特定の ID を渡す次のコードがあります。

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setObject:[NSNumber numberWithInteger:currentID] forKey:@"ID"];
timer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(checkID:) userInfo:dict repeats:NO];

- (void)checkID:(NSTimer*)t{
    NSInteger timerID = [[[t userInfo] objectForKey:@"ID"] integerValue];
    if (timerID == _myID){
       NSLog(@"got ID");
    }
}

しかし、タイマーが終了するとアプリケーションがクラッシュします。何か案は?ヘルプを探しましたが、上記のようなコードしか見つけることができず、他の人でも機能するようです。
ありがとう

4

1 に答える 1

0

私はあなたのコードをテストしましたが、ここでは動作しますが、「タイマー」プロパティはありません。

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setObject:[NSNumber numberWithInteger: currentID ] forKey:@"ID"];
[NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(checkID:) userInfo:dict repeats:NO];

この場合、「タイマー」プロパティは必要ないと思います。

于 2013-03-23T22:41:25.400 に答える