我的程序基本上是這樣的:UITapGestureRecognizer動作未被觸發; userInteractionEnabled已經被設置爲YES
的UIViewController - >自定義的UIView - > [UIImageView的數組]
我的問題是,我的識別器的操作方法永遠不會被調用。我已經將我的UIImageViews的userInteractionEnabled屬性設置爲YES。
在我的視圖控制器的viewDidLoad:
- (void)viewDidLoad
{
NSEnumerator *enumerator = [grid.subviews objectEnumerator];
UIImageView *view;
UITapGestureRecognizer *recognizer;
while((view = [enumerator nextObject])){
recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(openDeal:)];
view.userInteractionEnabled = YES;
recognizer.delegate = self;
recognizer.numberOfTapsRequired = 1;
[view addGestureRecognizer:recognizer];
NSLog(@"%d", (int)view.userInteractionEnabled);
[recognizer release];
}
[super viewDidLoad];
}
和openDeal的定義是這樣的:
-(void) openDeal:(UITapGestureRecognizer *) recognizer{
NSLog(@"%@",[NSString stringWithFormat:@"%d", recognizer.view.tag]);
}
試過你的解決方案。沒有解決錯誤。 – louallen