2014-02-13 6 views
0

Можно ли сделать категорию на UITapGestureRecognizer? Я хочу сделать метод удобства, чтобы избежать (alloc-init) игры.Сделать категории на uitapGestureRecognizer?

Я устал это:

+(void)tapDetector :(sel)selectormethod tags:(int)tag :tapsRequired:(int)taps{ 
    UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:ac action:@selector(??????????????????:)]; 
    singleTap.numberOfTapsRequired = tag; 
    singleTap.numberOfTouchesRequired = tag; 
} 

Но проблема в том, что я не могу получить selectorMethod в качестве параметра действия ... Может кто-нибудь помочь в этом вопросе? .

+0

"prob is tha t i can not get selectorMethod как параметр действия «Почему вы не можете? Селектор - это объект, который может передаваться как параметр, как и любой другой. В чем проблема? Что вы пробовали? – matt

ответ

1

Тип селектора SEL (не Сель), и вы не можете передать его непосредственно в действии (нет "@selector ..." материал Например:

UITapGestureRecognizer * singleTap = [[UITapGestureRecognizer alloc]initWithTarget:ac action:selectormethod]; 

@selector(...) является компилятором которая использует информацию символа времени компиляции для преобразования строковой версии селектора в константную ссылку на селектор SEL для использования во время выполнения. В вашем случае вызывающий абонент будет выполнять эту работу, а затем полученное значение может быть передано.

Смежные вопросы