2011-10-28 4 views

उत्तर

63

backBarButtonItem के tintColor सेट की तरह लग रहे बनाने के लिए एक नेविगेशन पट्टी के पीछे बटन का रंग बदलना चाहते हैं

: डिफ़ॉल्ट रूप से अपने आवेदन में सभी UIBarButtonItem उदाहरणों के लिए आवेदन किया है, तो आप सिर्फ इतना है कि ऐसा करने के लिए नई UIAppearance एपीआई का उपयोग कर सकते हैं 210
+0

मैं इस-(शून्य) की कोशिश की viewDidLoad { [ सुपर व्यूडिडलोड]; UIImageView * image = [[UIImageView alloc] initWithImage: [UIImage imageNamed: @ "logobar.png"]]; एनएसएलओजी (@ "फ्रेम ==% एफ", image.frame.size.width); self.navigationItem.backBarButtonItem.tintColor = [UIColor redcolor]; self.navigationItem.titleView = image; एनएसएलओजी (@ "% एफ", self.navigationItem.titleView.frame.size.width); } लेकिन यह काम नहीं कर रहा –

+0

2 विधि काम किया धन्यवाद –

+0

[[UIBarButtonItem उपस्थिति] setTintColor: [UIColor redColor]]; यह विधि IOS 5.0 या इससे ऊपर के संस्करणों के लिए कैसे काम करती है, इसके लिए यह विधि मौजूद है? –

8

जैकोब के उत्तर की पहली पंक्ति मेरे लिए काम नहीं करती क्योंकि बैकबर्टनइटम न्यूल था। यह पूर्ण है क्योंकि इसे किसी अन्य व्यू कंट्रोलर पर स्विच करते समय बाद में स्वचालित रूप से बनाया गया है। आप

self.title = @"nice title"; // self is here the view(controller) within the popoverController 

साथ बटन का शीर्षक सेट कर सकते हैं उस समय, लेकिन आप tintColor निर्धारित नहीं कर सकते।

मेरे लिए क्या काम किया गया था, बिना किसी शैली के एक नया UIBarButtonItem बनाना था। फिर शीर्षक और रंग propertys सेट करें और इसे वापस बैरबटन Item के रूप में सेट करें।

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] init]; 
backButton.title = @"go back - now!"; 
backButton.tintColor = [UIColor colorWithRed:0.1 green:0.5 blue:0.7 alpha:1.0]; 
self.navigationItem.backBarButtonItem = backButton; 
[okButton release]; 
+0

धन्यवाद। यह सही काम करता है। – Philip007

3

आप बटन अपने चित्र में तरह ठीक वैसा ही नज़र बनाना चाहते हैं, तो आप एक छवि है, भी उपयोग कर सकते हैं:

[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[UIImage imageNamed:@"back_button_bg"] 
             forState:UIControlStateNormal 
             barMetrics:UIBarMetricsDefault]; 

पृष्ठभूमि छवि अच्छे परिणाम के लिए एक आकार बदलने योग्य चित्र होना चाहिए।

0

सबसे अच्छा तरीका है मैं या यह विश्व स्तर पर स्थापित करने के लिए स्थानीय स्तर पर पाया

[[UIBarItem appearance] setTitleTextAttributes: 
     [NSDictionary dictionaryWithObjectsAndKeys: 
     [UIColor colorWithRed:220.0/255.0 green:104.0/255.0 blue:1.0/255.0 alpha:1.0], UITextAttributeTextColor, 
     [UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:1.0], UITextAttributeTextShadowColor, 
     [NSValue valueWithUIOffset:UIOffsetMake(0, 1)], UITextAttributeTextShadowOffset, 
     [UIFont fontWithName:@"AmericanTypewriter" size:0.0], UITextAttributeFont, 
     nil] 
     forState:UIControlStateNormal]; 
-1
[[UINavigationBar appearance]setTintColor:[UIColor whiteColor]]; 

इस यह मेरे लिए काम कर रहा है की कोशिश है ...

संबंधित मुद्दे