私はこのコードを持っています:
-(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;
}
ユーザーがボタンを押している間、ターゲットはビューの回転を開始します。ユーザーがそれを離すと、タイマーは停止します。
しかし、私はこれを与えています:
-[__NSCFTimer intValue]: 認識されないセレクターがインスタンス 0x4ae360 に送信されました
しかし、userInfo で NSNumber クラスを使用している場合、なぜタイマーを受け取るのでしょうか?
ありがとう。