iOS 设置导航栏半透明后添加视图变化

iOS 设置导航栏半透明后添加视图变化,第1张

1.设置导航栏为不透明

2.设置导航栏为半透明 [系统默认就是半透明的]

注意:iOS 导航栏如果设置半透明,则其透明度为90%.也就是说,如果设置 self.navigationController.navigationBar.barTintColor =[UIColor colorWithRed:1 green:0 blue:0 alpha:1],真正显示到界面上的颜色是有90%透明的

3.设置导航栏的背景颜色不会影响半透明 translucent 这个属性

4.隐藏导航栏

只要隐藏了导航栏后,不管 translucent 这个属性的值是ture或者false都会是下图效果

结果说明

如果设置了导航栏的 translucent = YES 这时在添加子视图的坐标原点相对屏幕坐标是(0,0).如果设置了 translucent = NO 这时添加子视图的坐标原点相对屏幕坐标就是(0, 64).

这里的xib是一个控制器所对应的view,使用导航控制器push到这个控制器的时候,得到以下两种情况.

1.导航栏半透明

2.导航栏不透明

在开中遇到这个需求一个侧滑View,滑出时覆盖整个控制器,包括导航栏

效果如下:

将一个View显示覆盖到NavigationBar上面,不能将将要显示的View添加到self.view上面,这样无法覆盖navigationBar。

如果需要覆盖NavigationBar,则将显示的view添加到self.navigationController.view

其实很简单,正常的建立View,只是在添加控件时

[self.navigationController.view addSubview:self.leftView]

而不是

self.view

这样就实现了!!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7877934.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存