iOS 导航栏颜色透明度渐变

最近公司项目,需要在首页实现一个效果,随着屏幕的滚动,导航栏背景色从没有到完全显示也就是透明度从0-1的过程.效果如下

实现方法 1.随着屏幕的滚动,改变导航栏的alpha,但是这样有一个不好的现象,就是导航栏leftItem,rightItem等也会跟着改变,这个效果不是我需要的,我需要的是只改变背景色的alpha 2.我在导航栏上添加了一个view,让view随着屏幕的滚动实现效果,这个时候,添加的view最好在最底层,这样才不会让你添加的view遮盖住其他控件.部分代码如下
在viewDidLoad中添加如下代码 [self.navigationController.navigationBar insertSubview:self.aplhaView atIndex:0]; 但是这样会有一个问题,在这个页面pusg或者modal后的页面中,刚才添加的view可能会布局在导航栏的最顶部或者其他的位置,这是因为,在push或者modal的时候,导航栏会重新调整布局,这个时候,我们就要改变刚刚ViewDidLoad中的代码

[[self.navigationController.navigationBar.subviews firstObject] insertSubview:self.aplhaView atIndex:0];
复制代码

Demo 结束语: 文章可能会存在错误,欢迎指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值