【问题标题】:strange behaviour with UINavigationController and autolayout top layout guideUINavigationController 和自动布局顶部布局指南的奇怪行为
【发布时间】:2015-09-08 16:44:11
【问题描述】:

我正在为导航控制器下的控制器使用自动布局。对于这个控制器,我主要在控制器视图中有一个滚动视图。滚动视图的对齐规则是顶部布局指南,底部布局指南,前导与超级视图对齐,尾随也是。

当我首先加载视图时布局很好,然后我按下添加描述按钮,它推送到下一个屏幕,然后屏幕将再次出现,但现在变成了这样.

导航栏和滚动视图之间突然出现了一些神秘的空白。我的猜测是顶部布局指南放错了位置。无论如何我可以解决这个问题或我做错了什么?

【问题讨论】:

  • 似乎工作正常 - 好吧,这个问题也不会每次都发生。你能解释一下吗?投票最多的答案实际上有效,但这是否意味着自动滚动视图插入在弹出后插入?

标签: ios layout uiscrollview uinavigationcontroller autolayout


【解决方案1】:

只需添加以下代码

self.automaticallyAdjustsScrollViewInsets = NO;

- (void)viewDidLoad方法中

【讨论】:

  • 我在 Bhavin 提供的链接中看到了这个答案,但我不确定为什么会这样
  • 我遇到了同样的问题,我通过上面的代码解决了我的问题,所以我建议你。你可以从TransitionGuide from apple developer获得更好的想法
【解决方案2】:

这里给你一个简单的答案

https://stackoverflow.com/a/18974954/2382237

尝试为您的 viewController 更改 edgeForExtendedLayout

self.edgesForExtendedLayout = UIRectEdgeAll;
self.extendedLayoutIncludesOpaqueBars = YES;

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2015-09-25
    • 2014-11-15
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    相关资源
    最近更新 更多