我正在尝试在UIViewController中创建一个UIActionSheet,如下所示:
discardAS = [[UIActionSheet alloc] initWithTitle:"title" delegate:self cancelButtonTitle:"Cancel" destructiveButtonTitle:"Discard" otherButtonTitles:nil];
discardAS.actionSheetStyle = UIActionSheetStyleDefault;
[discardAS showInView:[self view]];
当我唤起它时 - 整个屏幕“暗淡”(好像动作表实际上在前台) - 但我看不到任何动作表。)它似乎显示“屏幕外”。
当我在iOS7上尝试这个时,我可以看到一个白色的盒子向上射击,快速离开屏幕 - 好像它将ActionSheet放在屏幕顶部之上。当我点击窗口时,昏暗消失了,一切正常 - 就像iOS7一样,如果你点击动作表就会消失。
因此,我结束了ActionSheet正在关于屏幕的界限(以及之外)。
我也在控制台上看到以下内容
Presenting action sheet clipped by its superview. Some controls might not respond to touches. On iPhone try -[UIActionSheet showFromTabBar:] or -[UIActionSheet showFromToolbar:] instead of -[UIActionSheet showInView:].
我试过这两个,结果相同。显示self.view.frame显示一个大约0,0,300,200的矩形 - 所以它不是太过于夸张。
知道原因,或者如何修复/调试?
答案 0 :(得分:0)
对于后代 - 答案是我的层次结构中有一个“额外视图控制器” - 如下所述:iOS 6: What changed that made this View Controller Hierarchy break?