美文网首页
iOS 修改导航条半透明对UI布局的影响

iOS 修改导航条半透明对UI布局的影响

作者: 天明天 | 来源:发表于2017-03-20 15:10 被阅读0次

    iOS 7以后在ViewController里面引进了一系列属性用于管理页面布局。

    在iOS7后,View的布局是默认全屏的,Navigation Bar默认是半透明的,于是在Navigation Bar下面可以看到底部View视图的背景颜色如图1 。

    图1

    但是 如果将属性 edgesForExtendedLayout设置成UIRectEdgeNone,表明View是不要扩展到整个屏幕的。页面效果如图2:

    图2

    对于 automaticallyAdjustsScrollViewInsets 这个属性用于如果页面是ScrollView或者UITableView,通常我们希望ScrollView或者UITableView内容显示是在UINavigation Bar下面。

    通过设置edgesForExtendedLayout = UIRectEdgeNone或者self.navigationController.navigationBar.translucent = NO;可以让view的布局从UINavigation Bar下面开始,不过一个副作用就是当页面滑动的时候,view是没有办法占据全屏的。

    automaticallyAdjustsScrollViewInsets就可以很好的完成这个需求。可以设置self.automaticallyAdjustsScrollViewInsets = NO;来解决这个问题

    另外 若果你的状态栏是半透明的,现在想改为不透明的UI,而布局使用的不包括状态栏的frame 则可以这样设置 self.extendedLayoutIncludesOpaqueBars = YES;// 修改 translucent =NO后对frame的影响。

    参考连接:www.th7.cn/Program/IOS/201506/467748.shtml

    相关文章

      网友评论

          本文标题:iOS 修改导航条半透明对UI布局的影响

          本文链接:https://www.haomeiwen.com/subject/dlmcrttx.html