NavigationController導航控制器
導航欄高度:44+20(電池條)=66,在IOS7之前self.view的座標是從(0,64)開始的,在IOS7之後,導航欄全部透明,仍舊從(0,0)開始
一個導航控制器只有一個導航欄,一個導航欄有多個導航項
3.//設置導航欄背景圖片
4. UIImage *img = [UIImagep_w_picpathNamed:@"navbar_bg_normal"];
5. //修改圖片的大小
6. 第一步:begin UIGraphicsBeginImageContext(CGSizeMake(width, 64));
7. 第二步: draw
[img drawInRect:CGRectMake(0, 0, width, 64)];
8. 第三步: Get
UIGraphicsGetCurrentContext();
9. 第四步: End
UIGraphicsEndImageContext();
10://設置導航欄的字體的大小和顏色
self.navigationController.navigationBar.titleTextAttributes = @{NSFontAttributeName:[UIFontboldSystemFontOfSize:20],NSForegroundColorAttributeName:[UIColorredColor]};//快速創建字典形式
}
設置全局背景圖片一樣-----à用父類繼承
設置全局的導航欄和導航欄上字體的大小和屬性
//設置項目全局的導航欄的背景顏色
//注意:所有帶UI_APPEARANCE_SELECTOR宏修飾的方法都可以全局設置
[[UINavigationBarappearance] setBackgroundImage:img forBarMetrics:UIBarMetricsDefault];
[[UINavigationBarappearance] setTitleTextAttributes:@{NSFontAttributeName: [UIFontboldSystemFontOfSize:16], NSForegroundColorAttributeName: [UIColorwhiteColor]}];
12. 設置狀態欄的隱藏方法: //設置狀態欄
//方法一:設置pilit文件中的Viewcontroller-based status bar appearance 設爲NO
//通過全局application去修改
[[UIApplicationsharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
設置導航欄透明 self.navigationController.navigationBar.translucent = YES;
12. 導航欄在點擊時隱藏,再次點擊出現
13. - (void)btnClick:(UIButton *)btn
{
14. [self.navigationControllersetNavigationBarHidden:!self.navigationController.navigationBarHiddenanimated:true];
15.
16. //隱藏/顯示狀態欄
17. [[UIApplicationsharedApplication] setStatusBarHidden:self.navigationController.navigationBarHiddenwithAnimation:UIStatusBarAnimationFade];
18.
19. }
20.
21. - (void)viewWillDisappear:(BOOL)animated
22. {
23. [superviewWillDisappear:animated];
24. self.navigationController.navigationBar.translucent = NO;