针对5.1 SDK进行编译强制新的UIPopoverController"滑入"弹出窗口的演示 - 如何禁用?

Jer*_*ler 17 uikit ipad uisplitviewcontroller uipopovercontroller ios

根据5.1 SDK(发行版)编译我的iPad应用程序会导致UIPopoverController使用左侧演示文稿中的新"幻灯片放映"显示自己.这完全打破了我的popover演示,它依赖于具有"黑色"样式标题和一定高度.我试过设置presentsWithGestureNO,但似乎只禁用滑动手势,并不会停止的演讲风格.

这个相同的应用程序,无需重新编译,但在iOS 5.1上运行,使用旧的popover演示文稿样式.所以我知道iOS 5.1仍然支持向后兼容的方法.如何选择激活弹出窗口的旧演示文稿?

不幸的是,这对我的应用程序非常重要.

如果不这样做,有没有办法在新的弹出窗口上获得"黑色"标题?


虽然我的应用程序中有一个UISplitViewController,但它不负责显示弹出窗口.相反,我正在使用此代码:

   [self.popoverController presentPopoverFromRect:ipadButtonMenu.frame
                                           inView:self.view
                         permittedArrowDirections:UIPopoverArrowDirectionUp
                                         animated:YES];
Run Code Online (Sandbox Code Playgroud)

这个问题是由苹果开发者论坛中交叉张贴在这里.我希望有人有答案.


预期演讲: 在此输入图像描述

在iOS 5.1 SDK下编译后的演示文稿: 在此输入图像描述

All*_*net 5

这种变化似乎很难想到.当然,我们在使用滑动的细节视图中打破任何东西.真棒!

要回答你的"带回黑色"问题,如果它只是顶部导航栏颜色的问题,你可以使用外观代理.例如:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]];
Run Code Online (Sandbox Code Playgroud)

如有必要,可以非常具体地设置外观代理; 它有一个容器模型.上面有一个非常好的WWDC视频.

关于刚刚使用新编译器恢复旧行为,坦率地说,我也很想知道.新行为还会破坏主视图中的操作表; 以前,当主视图以弹出窗口呈现时,他们会做正确的事情.现在,这是一个断言失败.