您好,下午好,我在这里遇到了一些问题,老实说,我不明白我必须为具有不同消息的同一屏幕创建不同的警报视图,这些警报中的大多数只有 1 个按钮,但是有这个删除需要 2 个按钮的问题是,由于其他按钮只有 1 个按钮,所以当我创建 2 个按钮屏幕视图并添加 (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 方法时,我有一些问题
这里有一些代码
- (IBAction)saveInfo{
if (med.text.length ==0) {
UIAlertView *alertViewError = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"ERROR",@"")
message:NSLocalizedString(@"EMPTY1",@"")
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[alertViewError show];
[alertViewError release];
}
else if(medicamento.text.length >= 41){
[self lenghtError:40:NSLocalizedString(@"TF_MED",@"")];
}
else if (med.text.length ==0 || descripcion.text.length == 0) {
UIAlertView *alertViewError = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"ERROR",@"")
message:NSLocalizedString(@"EMPTY2",@"")
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[alertViewError show];
[alertViewError release];
}
else if (descripcion.text.length >= 41){
[self lenghtError:40:NSLocalizedString(@"TF_DESCRIPCION",@"")];
}
else{
[self insertDictionary];
UIAlertView *alertViewAcept = [[UIAlertView alloc] initWithTitle:@""
message: NSLocalizedString(@"ACCEPT_MSG",@"")
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[alertViewAcept show];
[alertViewAcept release];
[self.navigationController popViewControllerAnimated:YES];
}
}
- (IBAction)cancelData{
UIAlertView *alertViewCancel =
[[UIAlertView alloc] initWithTitle: NSLocalizedString(@"BT_DELETE_MED",@"")
message: NSLocalizedString(@"MSG_DELETE_MED",@"")
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles: @"Cancel", nil];
[alertViewCancel setTag:999];
[alertViewCancel show];
[alertViewCancel release];
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (alertView.tag == 999) {
if(buttonIndex==0){
[self.Bayer_DB_obj deleteRowWithKeyValue:[NSString stringWithFormat:@"%d",IdMed] onKeyName:@"id_ctl_med" onTable:@"ctl_med"];
// code to delete here
[self.navigationController popViewControllerAnimated:YES];
}
}
}
因此,在第一部分中,我创建了一些警报以指示用户他/她犯了错误,在第二部分中,我需要在删除之前进行确认,但是在这里,我需要 2 个按钮,然后,在第三部分中,我有被调用的方法,我在我的警报中添加了一个标签以避免在所有警报中进行这种比较,问题是,当您显示 alertViewAcept 时,它会将您带到上一个视图控制器,然后单击确定按钮(实际上是取消按钮标题)应用程序崩溃而没有任何“错误消息”
所以我不确定我做错了什么,请帮忙