zoukankan      html  css  js  c++  java
  • 被导航控制器包装的控制器的View的y值问题

    最近一直在纠结问题,为什么有时候被导航控制器包装的控制器的View的y值有时候是64,有时候是0,觉得很奇怪,于是研究了一下,发现有个属性可以改变View的y值,那就是translucent(属于导航栏的)这个属性可以设置y值,这个属性的作用是用来设置导航栏是否半透明,默认值为Yes(半透明效果),为NO则不透明,下图展示了一下Yes和No的区别:

    要想禁用translucent属性,可以在Storyboard中选中导航栏,然后在Attribute Inspectors中,取消translucent的勾选,或者直接导航栏的这个属性为NO。当translucent为NO是,当前导航控制器所包装的控制器的View的y值为64,反之为0,有些人会觉得奇怪,我没设置translucent=NO,只是用一个图片作为它的背景,然后View的y值就变成了64,

    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"nav_bg.png"] forBarMetrics:UIBarMetricsDefault];

    其实是你设置了图片之后,系统自动帮你把translucent那个属性的值设置成了NO,所以那个控制器的y值变成了64.

  • 相关阅读:
    Xml命名空间添加前缀的意义
    解决vs Installer无法下载更新
    mongodb模糊查询
    mongodb排序
    mongodb如何修改_id
    向Mongodb中插入数组元素
    Mongodb 常见操作符
    452.用最少数量的箭引爆气球
    450.删除二叉搜索树中的节点-medium
    45.跳跃游戏 II
  • 原文地址:https://www.cnblogs.com/Fc-ios/p/4132338.html
Copyright © 2011-2022 走看看