如果僅僅把navigationBar的alpha設(shè)為0的話,那就相當于把navigationBar給隱藏了冰单,大家都知道,父視圖的alpha設(shè)置為0的話,那么子視圖全都會透明的软棺。那么相應(yīng)的navigationBar的標題和左右兩個按鈕都會消失。這樣顯然達不到我們要求的效果沉馆。
(1)如果僅僅是想要navigationBar透明码党,按鈕和標題都在可以使用以下方法:
[self.navigationController.navigationBar setBackgroundImage:[UIImage new]
forBarMetrics:UIBarMetricsDefault];//給navigationBar設(shè)置一個空的背景圖片即可實現(xiàn)透明,而且標題按鈕都在
//去掉線
self.navigationController.navigationBar.shadowImage = [UIImage new];
//其實這個線也是image控制的斥黑。設(shè)為空即可
(2)如果你想在透明的基礎(chǔ)上實現(xiàn)根據(jù)下拉距離揖盘,由透明變得不透明的效果,那么上面那個就顯得力不從心了锌奴,這就需要我們采用另外一種方法了
//navigationBar是一個復合視圖兽狭,它是有許多個控件組成的,那么我們就可以從他的內(nèi)部入手
[[self.navigationController.navigationBar subviews] objectAtIndex:0].alpha = 0;//這里可以根據(jù)scrollView的偏移量來設(shè)置alpha就實現(xiàn)了漸變透明的效果