私はこのコードを持っている:NSTimer userInfo。オブジェクトがセレクタにどのように渡っていますか?
-(void)startRotation:(RDUtilitiesBarRotation)mode {
rotationTimer = [NSTimer scheduledTimerWithTimeInterval:0.1f target:self selector:@selector(rotateSelectedItem:) userInfo:[NSNumber numberWithInt:mode] repeats:YES];
}
-(void)rotateSelectedItem:(NSNumber*)sender {
float currAngle = [selectedItem currentRotation];
if ([sender intValue] == RDUtilitiesBarRotationLeft) {
[selectedItem rotateImage:currAngle - 1];
}
else {
[selectedItem rotateImage:currAngle + 1];
}
}
-(void)stopRotation {
[rotationTimer invalidate];
rotationTimer = nil;
}
目標は、ユーザがボタンを保持しながら、ビューの回転を開始します。ユーザーがそれを解放すると、タイマーは停止します。
しかし、私はこれを与えている:
0x4ae360インスタンスに送信された。しかし、私は「なぜ私は、のNSNumberクラスのUserInfoにpaasingていた場合タイマーを受け取っていますか?を - [__ NSCFTimer intValue]:認識されていないセレクタが
ありがとうございました。