1

次のコードは、メソッド「FollowPlayer」がクラス レベル アクセスを持つクラス メソッドであるため、コンパイルを拒否します。NSTimer が +(void)FollowPlayer を呼び出すことを正しく許可するにはどうすればよいですか?

- (void)awakeFromNib{zombie_size=4; timer=[NSTimer scheduledTimerWithInterval: 1.0 target:self selector:@selector(FollowPlayer) userInfo:nil repeats: NO];}

+ (void)FollowPlayer: NSTimer{}
4

3 に答える 3

2

ターゲットを「self」から [MyClass クラス] に変更します。ここで、MyClass はクラスの名前です。

于 2011-05-17T18:10:33.333 に答える
1

おい。呼び出しているメソッドが であることを確認できますscheduledTimerWithTimeIntervalか? あなたのコードには呼び出しがありscheduledTimerWithIntervalます...Time部分がありません

于 2011-05-17T18:43:27.087 に答える
1

単なる構文エラーではありませんか? あなたはこれができますか?

- (void)awakeFromNib{zombie_size=4; timer=[NSTimer scheduledTimerWithInterval: 1.0 target:self selector:@selector(FollowPlayer:) userInfo:nil repeats: NO];}
+ (void)FollowPlayer:(id)userInfo { NSLog(@"Timer called with user info %@", userInfo); }
于 2011-05-17T18:19:07.577 に答える