1

UIBarButtonItemのアクションのセレクターにクラスメソッドを使用したい。

コードは次のとおりです。

[[UIBarButtonItem alloc] 
    initWithTitle:@"title"                                            
    style:UIBarButtonItemStylePlain
    target: self
    action:@selector(method)]

アクションにインスタンスメソッドを使用すると、機能します。

しかし、アクションにクラスメソッドを使用すると、ボタンをタップするとエラーが発生します。
エラーメッセージは次のとおりunrecognized selector sent to instanceです。

これにクラスメソッドを使用することはできませんか?
自分ではなく、ターゲットの使用を設定するにはどうすればよいですか?

4

3 に答える 3

1

次のコードに変更してください:ここ
では、の代わりにtargetself[self class]

[[UIBarButtonItem alloc] initWithTitle:@"title"
                                 style:UIBarButtonItemStylePlain
                                target:self
                                action:@selector(method)];
于 2012-06-07T10:56:44.920 に答える
1

はい、できます

[[UIBarButtonItem alloc] initWithTitle:@"title" style:UIBarButtonItemStylePlain target: self
    action:@selector(method)];

- (void)method
{
    // here call class method

   [YourClassName methodName];
}
于 2012-06-07T11:00:03.000 に答える
0

はい、インスタンスメソッドを使用する必要があります。メソッドからクラスメソッドを呼び出すだけです。

于 2012-06-07T10:55:44.150 に答える