標籤:
轉載於:http://www.pocketdigi.com/20140218/1276.html
UIImageView並不像UIButton一樣,點點滑鼠就可以關聯點擊事件,也不像Android裡有onClickListener,這裡需要藉助於UITapGestureRecognizer類。從類名上就可以看出,這個類就是用於處理tap(單擊)事件的。
bbc和voaspecial是UIImageView對象
[bbc setUserInteractionEnabled:YES]; [voaspecial setUserInteractionEnabled:YES]; [bbc addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]]; [voaspecial addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]];
經測試,多個UIImageView不能共用一個UITapGestureRecognizer對象,之前調用的會沒效果。
根據點擊的view判斷來自誰的點擊。
-(void)clickCategory:(UITapGestureRecognizer *)gestureRecognizer{ NSLog(@"click"); NSLog(@"%hhd",[gestureRecognizer isMemberOfClass:[UITapGestureRecognizer class]]); UIView *viewClicked=[gestureRecognizer view]; if (viewClicked==bbc) { NSLog(@"bbc"); }else if(viewClicked==voaspecial) { NSLog(@"voaspecial"); } }
IOS開發: 為UIImageView添加點擊事件