给UITabbarcontroller直接add子viewcontroller

iOS7给UIViewController增加了一个属性edgesForExtendedLayout,默认是UIRectEdgeAll,即全屏布局。而我们通常为了方便,将该属性设置为UIRectEdgeAll,即左右上下都会根据父控制器来相应改变自己。

所以在该属性设置为UIRectEdgeAll时,子控制器A如果直接add在UITabbarcontroller或其子控制器的底部,那A的底部约束会自动往上移49,即UITabBar的高度,无论A的hidesBottomBarWhenPushed是啥,这可能就会使A显示不是自己想要的。

UIViewController的属性automaticallyAdjustsScrollViewInsets默认为YES,若子viewcontroller里面有UIScrollView的子视图(包括UITableView等子类),应将该属性设置为NO,否则UIViewController会显示不是自己想要的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,027评论 19 139
  • 1.自定义控件 a.继承某个控件 b.重写initWithFrame方法可以设置一些它的属性 c.在layouts...
    圍繞的城阅读 3,496评论 2 4
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,825评论 1 92
  • /* UIViewController is a generic controller base class th...
    DanDanC阅读 1,872评论 0 2
  • 两年以前,15年的这个时候,我和你应该是刚刚在一起。那时我妈因为脖子疼刚刚出院2个月,15年3月初我妈因为脖子扭伤...
    奋斗2840阅读 184评论 0 1