iOS7问题与容器视图

时间:2013-10-16 21:54:13

标签: iphone ios objective-c ios7

编辑**:虽然有人已经决定他们想在没有理由的情况下投票,但我还是要放弃。我注意到在我的视图控制器容器的viewDidLoad中,我设置的内容视图与IB中的大小相同。当我后来尝试使用我的视图容器控制器加载其他视图时,内容视图已经改变了它的界限。希望这可以帮助其他有类似问题的人。除外的答案奏效了。由于这是iOS 6的构建,因此对操作系统版本进行简单检查就可以轻松解决这个问题。


我有一个似乎与iOS7相关的奇怪问题。这是一款iOS6定位应用。我已经关注了有关创建自定义容器视图here的Apple自己的文档。我在iOS7中看到的问题是我加载的第一个视图位于我定义的内容视图的正确范围内,另外两个填充整个屏幕的边界,因此它隐藏在导航栏下,带有我的分段控件。我在故事板中的一个单独的视图控制器中定义了我正在加载的视图。是否存在某种对我不利的约束?

我应该补充一点,我注意到我在容器控制器中定义的内容视图实际上是在加载初始视图后更改它的大小。我真的不知道如何阻止iOS7更改UIViews的帧大小,当它真的不应该改变时。

以下是一些截图。代码与苹果文档中的代码几乎相同,尝试过其他一些想法,定义边界等等。但我认为它与IB有关,因为内容视图正在改变它的界限。它似乎只在iOS7中这样做。

Loads fine for first screen

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

实际上有一种正确的解决方法,

将标签栏下的视图的edgesForExtendedLayout设置为UIRectEdgeNone。

当然,我可能只是看了看照片,并认为这是你的问题...对不起,如果它完全不相关..

答案 1 :(得分:0)

这在iOS 7中是一个众所周知的“问题”。因为您现在可以通过UINavigationBars,UITabBars看到模糊的外观......这也会导致本机应用程序(例如照片应用程序)或API出现问题。