我正在尝试检测用户是否按下了 actionSheet 上的取消按钮或破坏性按钮。根据他/她的输入,我想修改屏幕上显示的警报消息。
所以我尝试使用if
来检查buttonIndex
,但事实证明该buttonIndex
值不会随着用户的输入而改变。
UIActionSheet *informUser = [[UIActionSheet alloc] initWithTitle:@"Missing data" delegate:self cancelButtonTitle:@"Thanks for telling me!" destructiveButtonTitle:@"I have ignored it!" otherButtonTitles:nil];
[informUser showInView:self.view];
// NSLog(@"Cancel button = %d", informUser.cancelButtonIndex);
// NSLog(@"Destructive button = %d", informUser.destructiveButtonIndex);
if(informUser.cancelButtonIndex == 1)
{
NSString *msg = [[NSString alloc] initWithFormat:@"Pls enter the number."];
UIAlertView *alertUser = [[UIAlertView alloc] initWithTitle:@"Missing data" message:msg delegate:self cancelButtonTitle:@"Thanks!" otherButtonTitles:nil];
[alertUser show];
}
我还尝试使用单独的方法:
-(void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex;
UIAlert
但是,当我在同一个屏幕上的不同点有多个时,我会得到错误的结果。
简而言之,我想对用户的UIAlert
不同操作/输入使用不同的。因此,如何检测actioSheet
用户按下了哪个按钮?
谢谢你。