2012-06-12 11 views
13

में नेविगेशन के मुख्य शीर्षक रंग को बदलें, मुझे सामान्य दृश्य नियंत्रक पर नेविगेशन के मुख्य शीर्षक के परिवर्तन रंग के लिए समस्या नहीं है, लेकिन एक MFMailComposeViewController पर, यह संभव नहीं है। मैं बटन के रंग बदल सकता हूं (रद्द और भेज सकता हूं), मैं नेविगेशन बार की पृष्ठभूमि सेट कर सकता हूं लेकिन शीर्षक के रंग को बदलने के लिए संभव नहीं है। मैं एक नया शीर्षक (जाहिरा तौर पर, यह एप्पल द्वारा की अनुमति नहीं है), मैं सिर्फ रंग बदल चाहते हैं निर्धारित नहीं करना चाहती। '(MFMailComposeViewController

कृपया मेरी मदद करो धन्यवाद

+0

इस लिंक को देखें: http://stackoverflow.com/questions/1634417/changing-mfmailcomposeviewcontrollers-toolbar-color – Dee

उत्तर

16
NSDictionary *navbarTitleTextAttributes = [NSDictionary dictionaryWithObjectsAndKeys: 
              [UIColor whiteColor],UITextAttributeTextColor, 
              [UIColor blackColor], UITextAttributeTextShadowColor, 
              [NSValue valueWithUIOffset:UIOffsetMake(-1, 0)], UITextAttributeTextShadowOffset, nil]; 

[[UINavigationBar appearance] setTitleTextAttributes:navbarTitleTextAttributes]; 

या

navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor yellowColor] forKey:UITextAttributeTextColor]; 

आप के लिए अपने काम आशा है कि ..

10
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc]init]; 
    picker.mailComposeDelegate = self; 
    [[picker navigationBar] setTintColor:[UIColor blackColor]]; 
+0

यह मैं क्या खोज, यहाँ आप नेविगेशन पट्टी का रंग बदलने (मैं पहले से ही है के लिए एक पृष्ठभूमि नहीं है वह), मैं शीर्षकदृश्य – user1451163

+0

का रंग बदलना चाहता हूं लेकिन धन्यवाद ^^ – user1451163

0

काला के अलावा अन्य रंगों के लिए, इस कोड के साथ चारों ओर खेलने :

MFMailComposeViewController *mailController = [MFMailComposeViewController new]; 

      [mailController.navigationBar setTintColor:[UIColor colorWithHue:240.0f/359.0f 
                    saturation:85.0f/100.0f 
                    brightness:60.0f/100.0f 
                     alpha:0.0f]]; 
13

यह iOS 7, 8, 9 के लिए सही जवाब है, और 10 है:

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init]; 
picker.mailComposeDelegate = self; 
[[picker navigationBar] setTitleTextAttributes:[NSDictionary dictionaryWithObject:[UIColor blackColor] forKey:NSForegroundColorAttributeName]]; 

यहाँ कारण है कि:

जांच से ऊपर का जवाब चिह्नित (द्वारा मनी) [UINavigationBar appearance] का संदर्भ गलत है क्योंकि यह UINavigationBar में शीर्षक का रंग बदल देगा जो MFMailComposeViewController पॉप-अप कर रहा है, जो एक प्रभाव था जिसे मैं नहीं चाहता था। मेरे कोड के रूप में आपको विशेष रूप से पिकर के नवबार को प्राप्त करने की आवश्यकता है।

tintColor सेट करना आईओएस 7 (मनी द्वारा दूसरा जवाब) के रूप में भी गलत है क्योंकि यह बटन के रंग सेट करता है, शीर्षक नहीं।

इसके अलावा, UITextAttributeTextColor अब बहिष्कृत है, कृपया NSForegroundColorAttributeName का उपयोग करें।

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