將NavigationBar設置透明(僅將指定視圖控制器進行透明處理),步驟以下:
1.在視圖控制器的頭文件中實現UINavigationControllerDelegate,
例如:@interface PicturePreviewViewController : UIViewController<UINavigationControllerDelegate>spa
2.在實現類中加入這個代理的方法及具體操做以下:代理
1 - (void) navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated { 2 // 若是進入的是當前視圖控制器 3 if (viewController == self) { 4 // 背景設置爲黑色 5 self.navigationController.navigationBar.tintColor = [UIColor colorWithRed:0.000 green:0.000 blue:0.000 alpha:1.000]; 6 // 透明度設置爲0.3 7 self.navigationController.navigationBar.alpha = 0.300; 8 // 設置爲半透明 9 self.navigationController.navigationBar.translucent = YES; 10 } else { 11 // 進入其餘視圖控制器 12 self.navigationController.navigationBar.alpha = 1; 13 // 背景顏色設置爲系統默認顏色 14 self.navigationController.navigationBar.tintColor = nil; 15 self.navigationController.navigationBar.translucent = NO; 16 } 17 }