最近公司專案,需要在首頁實現一個效果,隨著螢幕的滾動,導航欄背景色從沒有到完全顯示也就是透明度從0-1的過程.效果如下
![圖1.png](http://upload-images.jianshu.io/upload_images/1009061-6cd117198b21ddd7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![圖2.png](http://upload-images.jianshu.io/upload_images/1009061-1c234d7261479170.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
[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 結束語: 文章可能會存在錯誤,歡迎指正!