iOS導航欄NavigationBar的顏色,按鈕和標題以及字體顏色


首先,層級關系: leftBarButtonItem、rightBarButtonItem、title都是加在UINavigationItem上的,UINavigationItem再加在NavigationBar上,NavigationBar對應唯一的NavigationController.

1. 設置導航欄NavigationBar的背景顏色:

在appdelegate里創建UINavigationController后 設置

(1.) setBarTintColor : 設置NagivationBar的顏色 也可以用 :

[[UINavigationBarappearance] setBarTintColor:[UIColoryellowColor]];(在
UINavigationController執行pushViewController的界面里再次setBarTintColor后顏色還會變,說明設置的是同一個UINavigationBar,)

(2)在子集中用self.navigationController.navigationBar.barTintColor修改Navigationbar顏色

//*備注*//
[UINavigationBar appearance]的方法只能在Appdelegate里用,在UINavigationController的子頁面中只能通過self.navigationController修改NagivationBar的屬性.

 

(3.)setTintColor : 設置NagivationBar上按鈕的顏色:

self.navigationController.navigationBar.tintColor  = [UIColorblueColor];


2.設置NavigationBar上的title的顏色以及屬性

(1.)

[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];


(2.)

[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];

還有一點,關於返回按鈕的知識點:

在前一個界面設置下個界面的返回按鈕:self.navigationItem.backBarButtonItem


使用pushViewController切換到下一個視圖時,navigation controller按照以下3條順序更改導航欄的左側按鈕:

1、如果B視圖有一個自定義的左側按鈕(leftBarButtonItem),則會顯示這個自定義按鈕;

2、如果B沒有自定義按鈕,但是A視圖的backBarButtonItem屬性有自定義項,則顯示這個自定義項;

3、如果前2條都沒有,則默認顯示一個后退按鈕,后退按鈕的標題是A視圖的標題;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM