问题描述:
请教一个关于UIGestureRecognizer的问题。
比如我需要在用户在操作之后,用UIAlertView来确认提交动作。
解决方案:
UISwipeGestureRecognizer *gesture1 = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipeRight:)];
gesture1.direction = UISwipeGestureRecognizerDirectionRight;
[yourView addGestureRecognizer:gesture1];
在Action方法中:
-(void)didSwipeLeft:(UIGestureRecognizer *)gestureRecognizer {
UIAlertView *Alert = [[UIAlertView alloc] initWithTitle:@"" message:@"Are you sure to commit with its action" delegate:self cancelButtonTitle:CKString(@"NO") otherButtonTitles:CKString(@"YES"),nil];
[Alert show];
Alert.tag=222;
Alert.delegate=self;
[Alert release];
}
在AlertView Delegate
-(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if(alertView.tag==222) {
if(buttonIndex==1)
{
//// Yes condition
} else {
///// No condition
}
}
}
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@”转账确认”
message:info
delegate:self
cancelButtonTitle:@”取消”
otherButtonTitles:@”确定”, nil];
alertView.tag = 1001;
[alertView show];
[alertView release];
弹出框应该这样写,必须先设置它的tag再show出来,才管用弹出框的委托方法