iPhone नेविगेशन बार शीर्षक पाठ का रंग

वोट
272

ऐसा लगता है आईओएस नेविगेशन बार शीर्षक रंग डिफ़ॉल्ट रूप से सफेद है। वहाँ एक अलग रंग के लिए इसे बदलने के लिए कोई तरीका है?

मैं के बारे में पता कर रहा हूँ navigationItem.titleView, चित्र का उपयोग दृष्टिकोण। चूंकि मेरे डिजाइन कौशल सीमित हैं और मैं मानक चमकदार पाने में विफल रहे, मैं पाठ का रंग बदल रहा है पसंद करते हैं।

किसी भी जानकारी के लिए बहुत सराहना की जाएगी।

01/03/2009 को 07:51
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


32 जवाब

वोट
410

आधुनिक दृष्टिकोण

आधुनिक तरीका है, पूरे नेविगेशन नियंत्रक के लिए ... इस बार जब आपके नेविगेशन नियंत्रक के रूट दृश्य भरी हुई है करते हैं,।

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

बहरहाल, यह बाद के दृश्यों में एक प्रभाव है प्रतीत नहीं होता।

क्लासिक दृष्टिकोण

पुराने तरीके से, दृश्य नियंत्रक प्रति (इन स्थिरांक iOS 6 के लिए कर रहे हैं, लेकिन अगर iOS 7 उपस्थिति पर दृश्य नियंत्रक प्रति यह क्या करना चाहते हैं आप, लेकिन विभिन्न स्थिरांक के साथ एक ही दृष्टिकोण चाहता हूँ):

आप एक उपयोग करने की आवश्यकता UILabelके रूप में titleViewकी navigationItem

लेबल करना चाहिए:

  • एक स्पष्ट पृष्ठभूमि रंग है ( label.backgroundColor = [UIColor clearColor])।
  • बोल्ड 20pt सिस्टम फ़ॉन्ट का उपयोग करें ( label.font = [UIFont boldSystemFontOfSize: 20.0f])।
  • 50% अल्फा के साथ काले रंग की छाया है ( label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5])।
  • आप पाठ संरेखण के साथ-केंद्रित करने के लिए सेट कर सकते हैं ( label.textAlignment = NSTextAlignmentCenter( UITextAlignmentCenterपुराने SDK का)।

लेबल पाठ रंग सेट होने के लिए जो कुछ भी कस्टम रंग आप चाहते हैं। तुम एक रंग है कि पाठ छाया है, जो पढ़ने के लिए मुश्किल होगा में मिश्रण करने का कारण नहीं है चाहते हैं।

मैं परीक्षण और त्रुटि के माध्यम से इस पर काम किया है, लेकिन मूल्यों मैं उन्हें क्या एप्पल नहीं उठाया होने के लिए अंत में भी आसान है के साथ आया था। :)

आप इस की पुष्टि करना चाहते हैं, इस कोड ड्रॉप initWithNibName:bundle:में PageThreeViewController.mकी एप्पल के NavBar नमूना । यह एक पीले रंग की लेबल के साथ पाठ की जगह लेगा। यह मूल रंग के अलावा, एप्पल के कोड द्वारा उत्पादित से पृथक किया जाना चाहिए।

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self)
    {
        // this will appear as the title in the navigation bar
        UILabel *label = [[[UILabel alloc] initWithFrame:CGRectZero] autorelease];
        label.backgroundColor = [UIColor clearColor];
        label.font = [UIFont boldSystemFontOfSize:20.0];
        label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
        label.textAlignment = NSTextAlignmentCenter;
                           // ^-Use UITextAlignmentCenter for older SDKs.
        label.textColor = [UIColor yellowColor]; // change this color
        self.navigationItem.titleView = label;
        label.text = NSLocalizedString(@"PageThreeTitle", @"");
        [label sizeToFit];
    }

    return self;
}

संपादित करें: इसके अलावा, नीचे एरिक बी के जवाब पढ़ें। मेरे कोड प्रभाव को दर्शाता है, लेकिन उनके कोड किसी मौजूदा दृश्य नियंत्रक पर जगह में इस ड्रॉप का एक सरल तरीका प्रदान करता है।

07/03/2009 को 03:30
का स्रोत उपयोगकर्ता

वोट
226

मैं जानता हूँ कि यह एक बहुत पुराने धागा है, लेकिन मुझे लगता है कि नए उपयोगकर्ताओं के लिए पता करने के लिए उपयोगी होगा कि iOS 5 शीर्षक गुण स्थापित करने के लिए एक नया संपत्ति लाता है।

आप UINavigationBar के उपयोग कर सकते हैं setTitleTextAttributesफ़ॉन्ट, रंग, ऑफसेट स्थापित करने के लिए, और रंग और परछाई।

इसके अलावा आप एक ही डिफ़ॉल्ट UINavigationBar के शीर्षक पाठ सभी के लिए विशेषताएं सेट कर सकते हैं UINavigationBarsअपने आवेदन भर।

इसलिए जैसे उदाहरण के लिए:

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

[[UINavigationBar appearance] setTitleTextAttributes:navbarTitleTextAttributes];
26/10/2011 को 23:16
का स्रोत उपयोगकर्ता

वोट
180

iOS 5 में आप इस तरह से navigationBar शीर्षक रंग बदल सकते हैं:

navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor yellowColor]};
26/02/2012 को 17:31
का स्रोत उपयोगकर्ता

वोट
127

स्टीवन फिशर का जवाब के आधार पर मैं कोड के इस टुकड़े लिखा है:

- (void)setTitle:(NSString *)title
{
    [super setTitle:title];
    UILabel *titleView = (UILabel *)self.navigationItem.titleView;
    if (!titleView) {
        titleView = [[UILabel alloc] initWithFrame:CGRectZero];
        titleView.backgroundColor = [UIColor clearColor];
        titleView.font = [UIFont boldSystemFontOfSize:20.0];
        titleView.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];

        titleView.textColor = [UIColor yellowColor]; // Change to desired color

        self.navigationItem.titleView = titleView;
        [titleView release];
    }
    titleView.text = title;
    [titleView sizeToFit];
}

इस कोड का लाभ, फ्रेम ठीक से साथ काम कर के अलावा, कि अगर आप अपने नियंत्रक के शीर्षक बदलने कस्टम शीर्षक दृश्य भी अपडेट कर दिया जाएगा है। इसे मैन्युअल रूप से अद्यतन करने के लिए कोई ज़रूरत नहीं।

एक और बड़ा लाभ यह है कि यह बहुत आसान कस्टम शीर्षक रंग सक्षम करने के लिए बनाता है। तुम सब करने की ज़रूरत है नियंत्रक के लिए इस विधि को जोड़ने के लिए है।

05/05/2011 को 14:52
का स्रोत उपयोगकर्ता

वोट
40

ऊपर दिए गए सुझावों में से अधिकांश अब पदावनत कर रहे हैं, iOS 7 के लिए उपयोग -

NSDictionary *textAttributes = [NSDictionary dictionaryWithObjectsAndKeys: 
                               [UIColor whiteColor],NSForegroundColorAttributeName, 
                               [UIColor whiteColor],NSBackgroundColorAttributeName,nil];

self.navigationController.navigationBar.titleTextAttributes = textAttributes;
self.title = @"Title of the Page";

इसके अलावा, विभिन्न पाठ गुण सेट किया जा सकता है कि के लिए NSAttributedString.h चेकआउट।

03/10/2013 को 13:01
का स्रोत उपयोगकर्ता

वोट
38

आईओएस 7 और 8 में, आप की हरी कहते हैं कि यह बताने के लिए शीर्षक के रंग बदल सकते हैं

self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor greenColor] forKey:NSForegroundColorAttributeName];
19/12/2013 को 17:14
का स्रोत उपयोगकर्ता

वोट
20

अप-टू-डेट प्रश्न रखने के लिए, मैं जोड़ देंगे एलेक्स आरआर समाधान है, लेकिन में स्विफ्ट :

self.navigationController.navigationBar.barTintColor = .blueColor()
self.navigationController.navigationBar.tintColor = .whiteColor()
self.navigationController.navigationBar.titleTextAttributes = [
    NSForegroundColorAttributeName : UIColor.whiteColor()
]

जिसके परिणाम:

यहाँ छवि विवरण दर्ज

14/08/2015 को 13:48
का स्रोत उपयोगकर्ता

वोट
13

विधि 1 , आईबी में सेट:

यहाँ छवि विवरण दर्ज

विधि 2 , कोड की एक पंक्ति:

navigationController?.navigationBar.barTintColor = UIColor.blackColor()
08/04/2016 को 13:45
का स्रोत उपयोगकर्ता

वोट
13

iOS 5 के बाद से हम शीर्षक पाठ रंग और titleTextAttribute शब्दकोश (UInavigation नियंत्रक क्लास संदर्भ में पूर्वनिर्धारित शब्दकोश) का उपयोग कर नेविगेशन पट्टी का फ़ॉन्ट सेट करना होगा।

 [[UINavigationBar appearance] setTitleTextAttributes:
 [NSDictionary dictionaryWithObjectsAndKeys:
  [UIColor blackColor],UITextAttributeTextColor, 
[UIFont fontWithName:@"ArialMT" size:16.0], UITextAttributeFont,nil]];
11/09/2012 को 08:21
का स्रोत उपयोगकर्ता

वोट
13

Tewha द्वारा समाधान अच्छी तरह से काम करता है, तो आप एक पृष्ठ पर रंग बदलने के लिए कोशिश कर रहे हैं, लेकिन मैं हर पृष्ठ पर रंग बदलने के लिए सक्षम होना चाहते हैं। इतना है कि यह काम करेगा मैं छोटे-मोटे संशोधन किए गए सभी एक पर पृष्ठोंUINavigationController

NavigationDelegate.h

//This will change the color of the navigation bar
#import <Foundation/Foundation.h>
@interface NavigationDelegate : NSObject<UINavigationControllerDelegate> {
}
@end

NavigationDelegate.m

#import "NavigationDelegate.h"
@implementation NavigationDelegate

- (void)navigationController:(UINavigationController *)navigationController 
      willShowViewController:(UIViewController *)viewController animated:(BOOL)animated{
    CGRect frame = CGRectMake(0, 0, 200, 44);//TODO: Can we get the size of the text?
    UILabel* label = [[[UILabel alloc] initWithFrame:frame] autorelease];
    label.backgroundColor = [UIColor clearColor];
    label.font = [UIFont boldSystemFontOfSize:20.0];
    label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
    label.textAlignment = UITextAlignmentCenter;
    label.textColor = [UIColor yellowColor];
    //The two lines below are the only ones that have changed
    label.text=viewController.title;
    viewController.navigationItem.titleView = label;
}
@end
24/09/2010 को 03:56
का स्रोत उपयोगकर्ता

वोट
10

स्विफ्ट संस्करण

मैंने पाया तुम लोगों का सबसे Objective_C संस्करण का जवाब प्रस्तुत

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

viewDidLoad में

1.To बनाने NavigationBar पृष्ठभूमि रंग (उदाहरण के लिए: नीले रंग) हो जाता है

self.navigationController?.navigationBar.barTintColor = UIColor.blueColor()

2.To बनाने NavigationBar पृष्ठभूमि छवि (उदाहरण के लिए: ABC.png) हो जाता है

let barMetrix = UIBarMetrics(rawValue: 0)!

self.navigationController?.navigationBar
      .setBackgroundImage(UIImage(named: "ABC"), forBarMetrics: barMetrix)

3.To परिवर्तन NavigationBar शीर्षक (उदाहरण के लिए: [फ़ॉन्ट: Futura, 10] [रंग: लाल])

navigationController?.navigationBar.titleTextAttributes = [
            NSForegroundColorAttributeName : UIColor.redColor(),
            NSFontAttributeName : UIFont(name: "Futura", size: 10)!
        ]

(Hint1: "!" UIFont के बाद निशान मत भूलना)

(Hint2: वहाँ शीर्षक पाठ की विशेषताओं के बहुत सारे, आदेश क्लिक करें "NSFontAttributeName" आप वर्ग और देखने keyNames और वस्तुओं प्रकार इस बात की आवश्यकता दर्ज कर सकते हैं कर रहे हैं)

मुझे आशा है कि मैं मदद कर सकते हैं: डी

09/10/2015 को 10:05
का स्रोत उपयोगकर्ता

वोट
10

किसी भी दृश्य नियंत्रक viewDidLoad या viewWillAppear विधि में नीचे दिए गए कोड का प्रयोग करें।

- (void)viewDidLoad
{
    [super viewDidLoad];

    //I am using UIColor yellowColor for an example but you can use whatever color you like   
    self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor yellowColor]};

    //change the title here to whatever you like
    self.title = @"Home";
    // Do any additional setup after loading the view.
}
19/05/2014 को 07:43
का स्रोत उपयोगकर्ता

वोट
9

छोटा एवं सुन्दर।

[[[self navigationController] navigationBar] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor redColor]}];
08/12/2013 को 03:50
का स्रोत उपयोगकर्ता

वोट
8

यह स्टीवंस पर आधारित मेरी समाधान है

केवल वास्तविक अंतर मैं कुछ की स्थिति को समायोजित करने के लिए में से निपटने अगर पाठ लंबाई के आधार पर, यह कैसे सेब करने के लिए समान लगता है डाल है

UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(([self.title length] < 10 ? UITextAlignmentCenter : UITextAlignmentLeft), 0, 480,44)];
titleLabel.backgroundColor = [UIColor clearColor];
titleLabel.font = [UIFont boldSystemFontOfSize: 20.0f];
titleLabel.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
titleLabel.textAlignment = ([self.title length] < 10 ? UITextAlignmentCenter : UITextAlignmentLeft);
titleLabel.textColor = [UIColor redColor];
titleLabel.text = self.title;
self.navigationItem.titleView = titleLabel;
[titleLabel release];

आप 10 मूल्य अपने फ़ॉन्ट आकार के आधार पर समायोजित करने के लिए चाहते हो सकता है

22/10/2010 को 15:28
का स्रोत उपयोगकर्ता

वोट
6

यह एक बहुत पुराने धागा है, लेकिन मैं iOS 7 और इसके बाद के संस्करण के लिए रंग, आकार और के नेविगेशन बार शीर्षक लंबवत स्थिति स्थापित करने के लिए इस सवाल का जवाब उपलब्ध कराने के बारे में सोच

रंग और आकार के लिए

 NSDictionary *titleAttributes =@{
                                NSFontAttributeName :[UIFont fontWithName:@"Helvetica-Bold" size:14.0],
                                NSForegroundColorAttributeName : [UIColor whiteColor]
                                };

लंबवत स्थिति के लिए

[[UINavigationBar appearance] setTitleVerticalPositionAdjustment:-10.0 forBarMetrics:UIBarMetricsDefault];

शीर्षक निर्धारित करें और गुण शब्दकोश आवंटित

[[self navigationItem] setTitle:@"CLUBHOUSE"];
self.navigationController.navigationBar.titleTextAttributes = titleAttributes;
04/06/2015 को 15:05
का स्रोत उपयोगकर्ता

वोट
6

यह self.title स्थापित करने के लिए इस रूप में है, जबकि बच्चे navbars धक्का या tabbars पर शीर्षक दिखा प्रयोग किया जाता है की सिफारिश की है।

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // create and customize title view
        self.title = NSLocalizedString(@"My Custom Title", @"");
        UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectZero];
        titleLabel.text = self.title;
        titleLabel.font = [UIFont boldSystemFontOfSize:16];
        titleLabel.backgroundColor = [UIColor clearColor];
        titleLabel.textColor = [UIColor whiteColor];
        [titleLabel sizeToFit];
        self.navigationItem.titleView = titleLabel;
        [titleLabel release];
    }
}
24/05/2012 को 19:50
का स्रोत उपयोगकर्ता

वोट
6

मैं navigationBar की पृष्ठभूमि छवि कस्टमाइज़ कर दिया है और बटन आइटम छोड़ दिया, और ग्रे शीर्षक पृष्ठभूमि फिट नहीं। तब मैं का उपयोग करें:

[self.navigationBar setTintColor:[UIColor darkGrayColor]];

ग्रे रंग रंग बदलने के लिए। और शीर्षक अब सफेद है! मैं यही चाहता था।

आशा है कि यह भी मदद करने के लिए :)

27/05/2011 को 06:37
का स्रोत उपयोगकर्ता

वोट
6

मैं अपने एनएवी बटन केंद्र से बाहर पाठ फेंक (जब आप केवल एक बटन है) के साथ समस्या हुई थी। कि मैं सिर्फ इतना की तरह मेरे फ्रेम आकार बदल ठीक करने के लिए:

CGRect frame = CGRectMake(0, 0, [self.title sizeWithFont:[UIFont boldSystemFontOfSize:20.0]].width, 44);
21/01/2011 को 17:07
का स्रोत उपयोगकर्ता

वोट
4

यह स्विफ्ट में मेरे लिए काम करता है:

navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName:UIColor.white]
13/04/2017 को 02:44
का स्रोत उपयोगकर्ता

वोट
4

अभिविन्यास समर्थन के लिए इस तरह का प्रयोग करें

    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,40)];
 [view setBackgroundColor:[UIColor clearColor]];
 [view setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight ];

 UILabel *nameLabel = [[UILabel alloc] init];
 [nameLabel setFrame:CGRectMake(0, 0, 320, 40)];
 [nameLabel setBackgroundColor:[UIColor clearColor]];
 [nameLabel setAutoresizingMask:UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin |UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleLeftMargin];
 [nameLabel setTextColor:[UIColor whiteColor]];
 [nameLabel setFont:[UIFont boldSystemFontOfSize:17]];
  [nameLabel setText:titleString];
 [nameLabel setTextAlignment:UITextAlignmentCenter];
 [view addSubview:nameLabel];
 [nameLabel release];
 self.navigationItem.titleView = view;
 [view release];
17/01/2011 को 06:28
का स्रोत उपयोगकर्ता

वोट
3

नए iOS 7 पाठ विशेषताओं और कम शोर के लिए आधुनिक उद्देश्य सी का उपयोग कर एलेक्स आरआर के पद के लिए एक अद्यतन:

NSShadow *titleShadow = [[NSShadow alloc] init];
titleShadow.shadowColor = [UIColor blackColor];
titleShadow.shadowOffset = CGSizeMake(-1, 0);
NSDictionary *navbarTitleTextAttributes = @{NSForegroundColorAttributeName:[UIColor whiteColor],
                                            NSShadowAttributeName:titleShadow};

[[UINavigationBar appearance] setTitleTextAttributes:navbarTitleTextAttributes];
29/11/2013 को 23:35
का स्रोत उपयोगकर्ता

वोट
3

किसी को भी करने के लिए शीर्षक का फ़ॉन्ट आकार सेट करने के लिए मैं निम्नलिखित शर्तों का इस्तेमाल किया है .. हो सकता है मददगार

if ([currentTitle length]>24) msize = 10.0f;
    else if ([currentTitle length]>16) msize = 14.0f;
    else if ([currentTitle length]>12) msize = 18.0f;
15/09/2011 को 12:18
का स्रोत उपयोगकर्ता

वोट
2

मैं रंग सेट करने के उचित तरीके से विश्वास है की UINavigationBar है:

NSDictionary *attributes=[NSDictionary dictionaryWithObjectsAndKeys:[UIColor redColor],UITextAttributeTextColor, nil];
self.titleTextAttributes = attributes;

कोड ऊपर लिखा है UINavigationBar पर उपवर्ग है, स्पष्ट रूप से और साथ ही उपवर्गीकरण बिना काम करता है।

09/07/2012 को 23:04
का स्रोत उपयोगकर्ता

वोट
2

लेबल बढ़ता रहता है कि जब हम (मेरे मामले में मैं एक स्पिनर है कि मैं एक बटन जब तारीख भरी हुई है के साथ बदलें है) नेविगेशन बार में एक बटन डालने का एक ही समस्या का सामना (अन्य) के बाद, इसके बाद के संस्करण समाधान काम नहीं किया मेरे लिए, तो यहाँ क्या काम किया है और एक ही स्थान पर लेबल हर समय रखा है:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self)
{
    // this will appear as the title in the navigation bar
    //CGRect frame = CGRectMake(0, 0, [self.title sizeWithFont:[UIFont boldSystemFontOfSize:20.0]].width, 44);
   CGRect frame = CGRectMake(0, 0, 180, 44);
    UILabel *label = [[[UILabel alloc] initWithFrame:frame] autorelease];



    label.backgroundColor = [UIColor clearColor];
    label.font = [UIFont boldSystemFontOfSize:20.0];
    label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
    label.textAlignment = UITextAlignmentCenter;
    label.textColor = [UIColor yellowColor];
    self.navigationItem.titleView = label;
    label.text = NSLocalizedString(@"Latest Questions", @"");
    [label sizeToFit];
}

return self;
14/04/2011 को 22:23
का स्रोत उपयोगकर्ता

वोट
2

यह उन चीजों है कि याद कर रहे हैं में से एक है। आपका सबसे अच्छा शर्त, अपने स्वयं के कस्टम नेविगेशन बार बनाने के एक पाठ बॉक्स जोड़ने के लिए, और रंग में हेरफेर कि जिस तरह से है।

01/03/2009 को 08:11
का स्रोत उपयोगकर्ता

वोट
1
 self.navigationItem.title=@"Extras";
    [self.navigationController.navigationBar setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"HelveticaNeue" size:21],
      NSFontAttributeName,[UIColor whiteColor],UITextAttributeTextColor,nil]];
30/10/2014 को 05:39
का स्रोत उपयोगकर्ता

वोट
1

titleTextAttributes प्रदर्शन बार के शीर्षक पाठ के लिए जिम्मेदार बताते हैं।

@property (nonatomic, कॉपी) NSDictionary * titleTextAttributes चर्चा आप पाठ विशेषता NSString UIKit परिवर्धन संदर्भ में बताया गया कुंजियों का उपयोग शब्दकोश जिम्मेदार बताते हैं फ़ॉन्ट, पाठ रंग, पाठ छाया रंग, और पाठ छाया पाठ में खिताब के लिए ऑफसेट निर्दिष्ट कर सकते हैं,।

उपलब्धता आईओएस 5.0 और उच्चतर में उपलब्ध है। UINavigationBar.h में घोषित

07/10/2012 को 06:51
का स्रोत उपयोगकर्ता

वोट
1

AppDelegate फ़ाइल में इस विधि का उपयोग कर सकते हैं और हर दृश्य में उपयोग कर सकते हैं

+(UILabel *) navigationTitleLable:(NSString *)title
{
CGRect frame = CGRectMake(0, 0, 165, 44);
UILabel *label = [[[UILabel alloc] initWithFrame:frame] autorelease];
label.backgroundColor = [UIColor clearColor];
label.font = NAVIGATION_TITLE_LABLE_SIZE;
label.shadowColor = [UIColor whiteColor];
label.numberOfLines = 2;
label.lineBreakMode = UILineBreakModeTailTruncation;    
label.textAlignment = UITextAlignmentCenter;
[label setShadowOffset:CGSizeMake(0,1)]; 
label.textColor = [UIColor colorWithRed:51/255.0 green:51/255.0 blue:51/255.0 alpha:1.0];

//label.text = NSLocalizedString(title, @"");

return label;
}
20/08/2012 को 11:47
का स्रोत उपयोगकर्ता

वोट
1

आप [लेबल sizeToFit] बुलाना चाहिए; अजीब ऑफसेट को रोकने के लिए जब लेबल स्वचालित रूप से शीर्षक को ध्यान में रखते पुनर्निर्धारित किया जाता है जब अन्य बटन नेविगेशन बार पर कब्जा पाठ सेट करने के बाद।

16/03/2011 को 06:11
का स्रोत उपयोगकर्ता

वोट
0

स्विफ्ट 4 संस्करण:

self.navigationController.navigationBar.titleTextAttributes = [
        NSAttributedStringKey.foregroundColor: UIColor.green]
23/06/2018 को 08:41
का स्रोत उपयोगकर्ता

वोट
0

मैं नीचे दिए गए कोड का उपयोग कर रहा आईओएस 9 और मेरे लिए अपने काम करने के लिए ठीक। मैं भी खिताब के लिए छाया रंग का उपयोग किया है।

self.navigationItem.title = @"MY NAV TITLE";
self.navigationController.navigationBar.barTintColor = [UIColor redColor];
self.navigationController.navigationBar.translucent = NO;
NSShadow *shadow = [[NSShadow alloc] init];
shadow.shadowColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8];
shadow.shadowOffset = CGSizeMake(0, 1);
[self.navigationController.navigationBar setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys:
                                                       [UIColor colorWithRed:245.0/255.0 green:245.0/255.0 blue:245.0/255.0 alpha:1.0], NSForegroundColorAttributeName,
                                                       shadow, NSShadowAttributeName,
                                                       [UIFont fontWithName:@"HelveticaNeue-Light" size:21.0], NSFontAttributeName, nil]];

यह आप मदद कर सकते हैं।

धन्यवाद

12/07/2016 को 06:40
का स्रोत उपयोगकर्ता

वोट
0

अंदर शीर्षक विधि: आदेश अपने ऐप के विभिन्न UIVIewCOntrollers मैं UIViewController के लिए एक वर्ग को जोड़ने की अनुशंसा भर में एरिक बी के महान समाधान अधिक उपयोगी बनाने के लिए और अपने setTitle घोषित करने के लिए है। इस तरह आप दोहराव की आवश्यकता के बिना सभी दृश्य नियंत्रकों पर शीर्षक रंग परिवर्तन हो जाएगा।

हालांकि नोट करने के लिए एक बात है कि आप की आवश्यकता नहीं है [सुपर setTitle: tilte] है; एरिक के कोड में और है कि आप के नाम से जाना स्पष्टतः इस प्रणाली के लिए अपनी व्यू नियंत्रकों में @ "अपने नए शीर्षक" कॉल करने के लिए self.title = की आवश्यकता होगी

@implementation UIViewController (CustomeTitleColor)

- (void)setTitle:(NSString *)title
{
    UILabel *titleView = (UILabel *)self.navigationItem.titleView;
    if (!titleView) {
        titleView = [[UILabel alloc] initWithFrame:CGRectZero];
        titleView.backgroundColor = [UIColor clearColor];
        titleView.font = [UIFont boldSystemFontOfSize:20.0];
        titleView.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];

        titleView.textColor = [UIColor blueColor]; // Change to desired color

        self.navigationItem.titleView = titleView;
        [titleView release];
    }
    titleView.text = title;
    [titleView sizeToFit];
}

@समाप्त

31/12/2012 को 11:48
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more