0

弹出视图时,我想通过询问确认来保存一些数据。我要求使用 UIActionSheet 进行确认。但是,无论我在操作表中的响应如何,视图都在背景中发生变化,这给我使用响应带来了一些问题。我正在使用导航控制器来切换视图。我该如何解决这个问题

TIA

4

2 回答 2

0

@PooLas如果我理解正确,您使用 uiactionsheet 进行用户确认,而在后台(实际上在操作表下)您更改视图控制器。好吧,你不能这样做,因为委托必须附加到显示它的控制器(如果我错了,请纠正我)。所以当你点击按钮的时候,你只能先dismiss actionsheet,然后再改变view controller,而不是相反——PooLaS

于 2012-08-14T04:20:31.833 回答
0

更好的选择是使用 uialertview 来询问确认。要做到这一点,请按照以下步骤操作:

确保您的头文件包含以下内容:

@interface YourViewController : UIViewController <UIAlertViewDelegate>

现在,当询问确认添加此代码:

 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Are You Sure" delegate:self cancelButtonTitle:@"YES" otherButtonTitles:@"NO", nil];
[alert show];
[alert release];

现在按下委托下方的一个按钮后将被调用,因此添加应用程序的 .m 文件

 - (void)alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
 // the user clicked one of the YES/NO buttons
  if (buttonIndex == 0)
  {
    NSLog(@"NO button pressed");
  }                
  else
  {
    //Save data here                                          
    NSLog(@"YES button pressed");
  }
 }
于 2012-08-07T10:42:02.427 回答