在我的iPhone应用程序中......
无法调用委托方法...
这是我的代码
我在一个类中创建了一个简单的委托...
@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 :(得分:5)
[self setDelegate:self.superview];
这就是问题所在。
您应该将ViewController
设置为代理人的参考。
例如,在ImageDemoGridViewCell
中分配ViewController
后,请按如下方式设置委托。
ImageDemoGridViewCell *cell = [[ImageDemoGridViewCell alloc] initWith..];
cell.delegate = self;
然后将单元格作为子视图添加到ViewController
视图。