iPad上的UIActionSheet未显示取消按钮

时间:2011-05-17 09:34:11

标签: objective-c ipad ios4 uiactionsheet

我正在尝试在UIActionSheet中显示取消按钮,但它没有显示,这是可接受的行为吗?请建议。

UIActionSheet *actionSheet = [[UIActionSheet alloc]
          initWithTitle:@"Are you sure you want to clear the cache?"
          delegate:self
          cancelButtonTitle:@"No"
          destructiveButtonTitle:@"Yes"
          otherButtonTitles:nil];

[actionSheet showInView:self.view];  

[actionSheet release];

1 个答案:

答案 0 :(得分:54)

iPad有一些关于操作表及其取消按钮的特殊规则,具体取决于您显示它的位置:

  

您可以从工具栏,标签栏,按钮栏项或视图中显示操作表。在确定如何呈现操作表时,此类将起始视图和当前平台考虑在内。对于在iPhone和iPod touch设备上运行的应用程序,操作表通常从拥有视图的窗口底部向上滑动。对于在iPad设备上运行的应用程序,操作表通常显示在以适当方式锚定到起始视图的弹出窗口中。弹出窗口外的点击会自动关闭操作表,任何自定义按钮内的点击都会自动关闭。您也可以通过编程方式解除它。

     

在iPad上展示操作表时,有时您不应包含取消按钮。如果仅显示操作表,系统将在不使用动画的情况下在弹出框中显示操作表。由于弹出窗口外的水龙头在不选择项目的情况下关闭操作表,因此这将导致取消工作表的默认方式。因此,包括取消按钮只会引起混淆。但是,如果您有一个现有的弹出框并且正在使用动画在其他内容上显示一个操作表,则取消按钮仍然是合适的。有关更多信息,请参阅iPad人机界面指南。

以下是一个包​​含更多解释的链接:http://crazyviraj.blogspot.com/2010/05/showing-cancel-button-in.html

相关问题