2012-01-06 3 views
1

В моем приложении iPhone ......Proble вызова пользовательских метод делегата

Не удалось вызвать метод делегата ....

Вот мой код

Я создал простой делегат в одном классе ...

@protocol imagecelldelegate 

-(BOOL) isIntersects:(CGRect)lastTouch; 

@end 

@interface ImageDemoGridViewCell : AQGridViewCell 
{ 

    id<imagecelldelegate> delegate; 
} 




@property (nonatomic,retain) id delegate; 

@end 

Теперь я установил делегат в реализацию этого класса и назвал метод делегата.

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    [self setDelegate:self.superview]; 

    [delegate isIntersects:originalSelf]; 
    //Getting error at this point... 

    } 

После этого я реализовал метод в классе, который я задал делегат ..

@interface ViewController : UIViewController<imagecelldelegate> 
{ 

и реализован метод в этом классе ....

-(BOOL) isIntersects:(CGRect)lastTouch 
{ 

    NSLog(@"Delegate Yippee"); 

    return YES; 
} 
+0

Вы получаете какие-либо ошибки? или «Делегат Yippee» не регистрируется? –

+0

Когда я вызываю метод на этой линии, получаю ошибку. –

ответ

5
[self setDelegate:self.superview]; 

В этом проблема.

Вы должны установить ViewController в качестве ссылки для делегата.

Например, после того, как вы выделили ImageDemoGridViewCell в ViewController, установите делегат следующим образом.

ImageDemoGridViewCell *cell = [[ImageDemoGridViewCell alloc] initWith..]; 
cell.delegate = self; 

Затем добавить ячейку как подвид к ViewController посмотреть.

+0

Спасибо Adhira его работы..очень многое ..... –

+0

Добро пожаловать – Ilanchezhian

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