最近开了个新项目,因为之前导航和tabbar都是用的别人的架子,这次自己写的,过程中出现了问题。
最先出现的是设置导航的颜色时出现的,在设置BarTintColor时,发现给设置的颜色和UI给的颜色不对,最初怀疑自己设置错色值了,查看后不是,于是上网查资料,发现是导航的Translucent的问题,这个属性的意思是透明的,半透明的,默认值是Yes,于是将这个值设置为No。这样导航的颜色正确了。
此时却又出现了导航下面便宜64像素的问题,这种情况之前遇到过,一般是1.self.automaticallyAdjustsScrollViewInsets = NO; 2.[self setEdgesForExtendedLayout:UIRectEdgeNone];这两个属性的问题,但是不是的,因为我已经设置过了,于是又去查资料,很混乱,但是还是发现了有用的资料,就是extendedLayoutIncludesOpaqueBars这个属性,直译就是“扩展的布局包括不透明的bar”这个应该是和Translucent
配套使用的,因为将Translucent设置为No(即不透明),extendedLayoutIncludesOpaqueBars则应设置为Yes(布局包含不透明,否则下移了64),self.extendedLayoutIncludesOpaqueBars=Yes;