iOS 7:UINavigationController中的UIScrollView偏移量如何设置?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (11)

我目前正在iOS 7上迁移我的应用程序,我在新的导航栏上的代码:

UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:[[MainViewController alloc]init]];

在接口构建器中,我们可以选择为视图设置一个现有导航栏,并且所有内容都与真实视图的内容相匹配。

好的,现在,我不知道如何正确地设计与界面生成器。我仍然有我的片段来初始化我的导航控制器。但是,在MainViewController的界面构建器中,如果我将状态栏设置为半透明或不透明的导航栏,则顶部的偏移量为44 px(见下文)。

接口生成器,结果如下:

现在,如果我将状态栏设置为None,则顶部没有偏移,但是由于导航条的缘故,模拟器上的视图较小,因此界面生成器中的视图底部被切断。

提问于
用户回答回答于

我在控制器中设置了以下属性:

self.automaticallyAdjustsScrollViewInsets = false

我并不真正理解这个属性的真正好处(或者为什么默认值为true)。

我找到的唯一文件是:

在IOS 11中automaticallyAdjustsScrollViewInsets被废弃了

您现在应该使用:

self.tableView.contentInsetAdjustmentBehavior = .never
用户回答回答于

这个设置也可以很容易地从界面生成器调整。

  1. 选择视图控制器
  2. 单击“属性检查器”选项卡
  3. 取消“调整滚动视图内嵌”

扫码关注云+社区