2014-08-15 3 views
0

У меня есть статическая функция в Util.m какПередача ViewController Тип UITextDelegate в качестве параметра

+ (UIView *) getBackButtonAsSubViewForNavigationBar:(UIViewController *)targetView :(SEL)targetAction { 

     ... 
     [button addTarget:targetView action:targetAction ...]; 

} 

Внутри MyViewController : UIViewController <UITextFieldDelegate>, я пытаюсь использовать его в качестве

UIView * backBtn = [Util getBackButtonAsSubViewForNavigationBar:self targetAction:@selector(cancelOp)] 

Но Xcode говорит:

Нет Знать класс для метода для селектора 'getBackButtonAsSubViewForNavigationBar: tar getAction: '

Что мне не хватает?

Util.h 


+ (UIView *) getBackButtonAsSubViewForNavigationBar:(UIViewController *)targetView :(SEL)targetAction; 


Util.m 

+ (UIView *) getBackButtonAsSubViewForNavigationBar:(UIViewController *)targetView :(SEL)targetAction { 

     ... 
     [button addTarget:targetView action:targetAction ...]; 

} 

cancelOp выглядит следующим образом:

- (IBAction)cancelOp:(id)sender { 
    [self dismissViewControllerAnimated:YES completion:Nil]; 
} 
+1

Я не уверен, если это ошибка, но вы пытаетесь передать контроллер представления для одного из параметров, который должен быть представлением. – AdamPro13

+0

Хороший улов ... Я перешел на UIViewController .... не помог – GJain

ответ

2

Вы должны объявить/определить метод, как:

Util.h 


+ (UIView *) getBackButtonAsSubViewForNavigationBar:(UIViewController *)targetView target:(SEL)targetAction; 


Util.m 

+ (UIView *) getBackButtonAsSubViewForNavigationBar:(UIViewController *)targetView target:(SEL)targetAction { 

     ... 
     [button addTarget:targetView action:targetAction ...]; 

} 
+0

он работает ... спасибо ... Я буду читать документы снова ... если бы вы могли пролить некоторый свет, а? – GJain

+0

Ошибка в определении параметра, вы должны использовать xxxxx: (type) name –

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