IOS開發中設定導覽列主題,ios開發導覽列主題
/** * 系統在第一次使用這個類的時候調用(1個類只會調用一次) */+ (void)initialize{ // 設定導覽列主題 UINavigationBar *navBar = [UINavigationBar appearance]; // 設定背景圖片 NSString *bgName = nil; if (iOS7) { // 至少是iOS 7.0 bgName = @"NavBar64"; } else { // 非iOS7 bgName = @"NavBar"; } [navBar setBackgroundImage:[UIImage imageNamed:bgName] forBarMetrics:UIBarMetricsDefault]; // 設定標題文字顏色 NSMutableDictionary *attrs = [NSMutableDictionary dictionary]; attrs[NSForegroundColorAttributeName] = [UIColor whiteColor]; attrs[NSFontAttributeName] = [UIFont systemFontOfSize:16]; [navBar setTitleTextAttributes:attrs]; //設定BarButtonItem的主題 UIBarButtonItem *item=[UIBarButtonItem appearance]; //設定文字顏色 NSMutableDictionary *itemAttrs=[NSMutableDictionary dictionary]; itemAttrs[NSFontAttributeName]=[UIFont systemFontOfSize:14]; itemAttrs[NSForegroundColorAttributeName]=[UIColor whiteColor]; [item setTitleTextAttributes:itemAttrs forState:UIControlStateNormal]; if (!iOS7) { //設定按鈕背景 [item setBackgroundImage:[UIImage imageNamed:@"NavButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [item setBackgroundImage:[UIImage imageNamed:@"NavButtonPressed"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault]; //設定返回按鈕的背景 [item setBackButtonBackgroundImage:[UIImage imageNamed:@"NavButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [item setBackButtonBackgroundImage:[UIImage imageNamed:@"NavButtonPressed"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault]; } else{ navBar.tintColor=[UIColor whiteColor]; } }