Storyboard自动布局中遇到的问题

做项目时,需要一个页面隐藏Nav,tableView从状态栏顶部开始布局,可是自动布局过程中,tableView总是从statusBar下面开始布局(顶部总是覆盖不了状态栏)。后来我发现了问题,找到了解决方法。

先说一下我的解决方法

1.在storyboard中,选中viewController,在右侧属性栏找到“Adjust Scroll View Insets”选项,取消勾选此项。
2.为tableview布局添加约束时,点击数值右侧的向下箭头,选择“View(current distance = 0)”,不要选“Top Layout Guide(current distance = 0)”

关于Top Layout Guide和Bottom Layout Guide

原来自动布局时,是可以选择你的约束是基于superview还是layout guide的。网上关于layout guide的描述如下:

Top Layout Guide用于自动布局的辅助,在Storyboard中可以看到Top Layout Guide作为ViewController的属性存在,也就是topLayoutGuide,官方文档对这个属性的Discussion是:
topLayoutGuide属性表示不希望被透明的状态栏或导航栏遮挡的内容范围的最高位置。这个属性的值是它的length属性的值(topLayoutGuide.length),这个值可能由当前的ViewController或这个ViewController所属的NavigationController或TabBarController决定,有如下情况:
一个独立的ViewController,不包含于任何其他的ViewController。如果状态栏可见,topLayoutGuide表示状态栏的底部,否则表示这个ViewController的上边缘。
包含于其他ViewController的ViewController不对这个属性起决定作用,而是由容器ViewController决定这个属性的含义:
如果导航栏(Navigation Bar)可见,topLayoutGuide表示导航栏的底部。
如果状态栏可见,topLayoutGuide表示状态栏的底部。
如果都不可见,表示ViewController的上边缘。
这部分还比较好理解,总之是屏幕上方任何遮挡内容的栏的最底部。

storyBoard中TopLayout和SuperView相关推荐

  1. iOS8开发~UI布局(二)storyboard中autolayout和size class的使用详解

    一.概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的: 1.Xcode6中增加了size class,在storyboard中如何使用? 2.a ...

  2. iOS开发~UI布局(二)storyboard中autolayout和size class的使用详解

    一.概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的: 1.Xcode6中增加了size class,在storyboard中如何使用? 2.a ...

  3. Swift - 使用addSubview()方法将StoryBoard中的视图加载进来

    使用 Storyboard 我们可以很方便地搭建好各种复杂的页面,同时通过 segue 连接可以轻松实现页面的跳转. 但除了segue,我们还可以使用纯代码的方式实现Storyboard界面的跳转. ...

  4. (转)如何从storyBoard中加载其中一个controller

    在有storyboard之前,也就是iOS5之前,多视图之间的连接是通过创建新的xib文件,然后在代码中先alloc一个该类的实例,然后用 - (id)initWithNibName:(NSStrin ...

  5. 如何在Storyboard中使用Scroll view

    本文章环境Xcode 11 在开始使用scroll view之前(storyboard/XIB),我们必须搞清楚两个东西 在Storybord/Xib中使用Scroll view,会有哪些结构 为什么 ...

  6. ***Xcode Interface Builder或Storyboard中可建立那两种连接?

    在Xcode Interface Builder或Storyboard中,可建立到输出口(IBOutlet)和操作(方法,IBAction)的连接. IBOutlet are for output C ...

  7. Storyboard中segue使用总结

    简介         场景转换在应用中是非常常见的,让用户在一个视图控制器内操作,能够实例化并显示另一个视图控制器,需要创建一个在两者之间相连的segue(转 场).比如导航控制器里面,某个场景中的操 ...

  8. 【学习笔记】在storyboard中给TabViewController添加tab页面

    正题: 1.首页动态拖一个UIViewController到storyboard中 2.然后右键UITabBarController在木manaul栏右侧的加号连线新的UITabViewControl ...

  9. 在代码中加载storyBoard中的ViewController

    首先, 要在storyBoard中画出想要的VC, 然后建一个VC类和他关联.如图 : 调用时找如下写: DetailViewController *detailVC = [[UIStoryboard ...

  10. iOS开发Storyboard中UITableView顶部默认空白 - 芒果iOS

    [主要内容:] 1. 问题描述 2.问题分析 3. 解决问题办法 一.问题描述 前两天开发的时候在StoryBoard中创建了一个UITableView,但是拖到Controller里边之后,UITa ...

最新文章

  1. 创建github账号
  2. hdu 1520 没有上司的晚会
  3. 《无码的青春》第四章 程序员的二象性,左手流氓,右手疯子
  4. 前端学习(3257):react中添加todolist
  5. 【原】Win SQL Server2012 IIS 安装(图文详解)
  6. 分享Silverlight/WPF/Windows Phone一周学习导读(11月6日-11月12日)
  7. PAT Basic 1011
  8. python样本不均衡_三招提拔数据不均衡模子的机能(附python代码)
  9. 《灵飞经》①洪武天下 第四章 灵道石鱼
  10. 心理学推荐书籍——《色眼识人》
  11. SimpleFOC调参3-PID参数整定攻略
  12. Darknet - 模型 (.weights) 重命名
  13. opencore 启动总是在win_单双硬盘装Windows/Mac双系统用OpenCore引导菜单添加Windows引导项...
  14. android平板电脑的虚拟键盘,win10平板电脑不弹出虚拟键盘的两种解决方法
  15. MFC 执行顺序总结
  16. dede taglist模板中调用自定义字段
  17. Qt编写可视化大屏电子看板系统15-曲线面积图
  18. 电脑软件打不开,提示缺失某个.dll文件的原因及解决办法(亲测能用)
  19. 妈妈写给热恋中的女儿的信!建议女孩都要看!
  20. html5多线程例子,javascript的单线程事件循环及多线程介绍

热门文章

  1. 计算机无法识别游戏手柄,Win10系统使用游戏xbox游戏手柄提示“无法识别”的解决办法...
  2. (转)驾驶证到期换证指南
  3. 秦小明 第六讲 投融资,资产运作
  4. 公式图片转换成Word格式
  5. 人才管理是什么意思_什么是iTM?人才管理iTM是什么意思?
  6. 滚动加载分辨率scrollTop小数问题
  7. 闲鱼网站实时监控iphone最新发布信息
  8. 网站被黑被劫持跳转到其他网站该如何解决
  9. centos7 设置网络(静态ip),联网失败,DNS解析失败(被覆盖),虚拟机
  10. idea 中部署 tomcat