2012-02-05 8 views
6

का उपयोग करके नेविगेशन बार टिंट बदलें, मैं इस साइट को देख रहा हूं और दूसरी ओर नेविगेशन बार टिंट चेंज को कैसे सेट किया है, मैंने उदाहरण देखे हैं लेकिन मुझे काफी कुछ नहीं चाहिए, इसलिए किसी भी मदद की सराहना की जाएगी।एक्सकोड

मेरे ऐप प्रतिनिधि पर

मेरे पास है:

@synthesize window; 
@synthesize tabBarController; 
@synthesize navigationController; 
@synthesize navigationController1; 
@synthesize navigationController2; 
@synthesize viewController; 
@synthesize viewController2; 
@synthesize viewController3; 

#pragma mark - 
#pragma mark Application lifecycle 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions {  

    // Override point for customization after application launch. 


    // Set the tab bar controller as the window's root view controller and display. 
self.window.rootViewController = self.tabBarController; 
[self.window makeKeyAndVisible]; 


    return YES; 
} 

जब मैं ऊपर पर कोड self.navigationController.navigationBar setTintColor:[UIColor blackColor] दर्ज करते हैं, यह केवल मेरे नेविगेशन नियंत्रकों में से एक नहीं, लेकिन एक मैं की जरूरत है बदल जाता है।

मेरे पास मेरे टैबबार पर 7 आइटम हैं और जब मैं "अधिक ..." दबाता हूं, तो मुझे मुख्य स्क्रीन पर फिट नहीं होने वाली अन्य वस्तुओं के साथ एक टेबल दृश्य मिलता है, नेविगेशन बार स्वचालित रूप से जोड़ा जाता है, और कोई फर्क नहीं पड़ता मैं क्या करता हूं मैं इस नेविगेशन बार टिंट को नहीं बदल सकता, मैं उन लोगों को बदल सकता हूं जिनके पास @synthesize है लेकिन स्वचालित रूप से दर्ज नहीं किया गया है।

क्या कोई मुझे बता सकता है कि स्वचालित रूप से नेविगेशन बार को कैसे बदला जाए?

उत्तर

17

आप उपस्थिति प्रॉक्सी का उपयोग कर ऐसा कर सकते हैं। आप इस तरह से रंग सेट यदि यह अनुप्रयोग में हर नेविगेशन पट्टी पर लागू होंगे:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]]; 
+1

बस यह उल्लेख करना चाहता था कि उपस्थिति प्रॉक्सी केवल आईओएस 5 में उपलब्ध है। – Randall

+0

जैसा कि सेटटिंटकॉलर विधि है। यदि आपको आईएसओ 4 पर काम करने के लिए इस सामान की ज़रूरत है तो आपको एक अलग दृष्टिकोण की आवश्यकता होगी। यहां एक चर्चा है जो कुछ समाधानों से जुड़ी है: http://stackoverflow.com/questions/9150956/customizeappearance-compatibility-on-others-ios/9151033#9151033 –

+0

शानदार, यही वह है जिसे मैं ढूंढ रहा था। आपका बहुत बहुत धन्यवाद। – Derek

3

iOS 6 और कम के लिए:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]]; 

आईओएस 7 के लिए और अधिक:

[[UINavigationBar appearance] setBarTintColor:[UIColor blackColor]]; 

इसे इस विधि में AppDelegate में सेट करें।

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions