您好,我是Xcode和iOS编程的新手。 我在我的动作表和警报中遇到了一些麻烦,必须按两次才能工作。 它也说: “呈现由其超级视图剪辑的动作表”。某些控件可能无法响应触摸。在iPhone上尝试 - [UIActionSheet showFromTabBar:]或 - [UIActionSheet showFromToolbar:]而不是 - [UIActionSheet showInView:]。
{
UIActionSheet *actionSheet = [[UIActionSheet alloc]
initWithTitle:@"¿?" delegate:self cancelButtonTitle:@"No" destructiveButtonTitle:@"Send" otherButtonTitles:nil];
[actionSheet showInView:self.view];
}
任何帮助将不胜感激!
答案 0 :(得分:5)
您需要将其放在标签栏(或工具栏)中,而不是:
[actionSheet showInView:self.view];
DO
[actionSheet showFromTabBar:self.tabBarController.tabBar];
答案 1 :(得分:1)
如果您的应用程序在要显示UIActionSheet
的屏幕上使用导航栏(而不是工具栏),请尝试将其显示在导航控制器的工具栏上。
即使您隐藏了导航控制器的工具栏,也会显示操作表。
[myActionSheet showInView:self.navigationController.toolbar]
答案 2 :(得分:0)
我遇到了同样的问题,如果你使用了tabbar或naviatinbar,我决定使用[actionSheet showInView:self.parentViewController.view];
代替self.view
答案 3 :(得分:0)
此方法也有效,它隐藏“显示由其超级视图剪切的操作表”警告。
[actionSheet showInView:[UIApplication sharedApplication].keyWindow];