Bara de navigare pentru iPhone Titlu Culoare text

voturi
272

Se pare că culoarea din titlu iOS Bara de navigare este alb în mod implicit. Există o modalitate de a schimba într-o culoare diferită?

Sunt conștient de navigationItem.titleViewabordarea folosind o imagine. Din moment ce abilitățile mele de design sunt limitate și nu am reușit pentru a obține lucioasă standard, prefer schimbarea culorii textului.

Orice înțelegere ar fi mult mai apreciat.

Întrebat 01/03/2009 la 07:51
sursa de către utilizator
În alte limbi...                            


32 răspunsuri

voturi
410

abordarea modernă

Modul modern pentru intregul sistem de navigare ... face acest lucru o dată, atunci când este încărcat în vederea rădăcină controler de navigare.

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

Cu toate acestea, acest lucru nu pare să aibă un efect în vizualizările ulterioare.

abordarea clasică

Vechiul mod, pentru fiecare vizualizare controler (aceste constante sunt pentru iOS 6, dar dacă doriți să-l facă pentru fiecare vizualizare controler de pe iOS 7 aspectul veți dori aceeași abordare, dar cu diferite constante):

Trebuie să utilizați o UILabelca și titleViewDIRECTIVEI navigationItem.

Eticheta ar trebui:

  • Au o culoare de fundal clar ( label.backgroundColor = [UIColor clearColor]).
  • Utilizați fonturi de sistem 20pt bold ( label.font = [UIFont boldSystemFontOfSize: 20.0f]).
  • Au o umbră de negru cu 50% alfa ( label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5]).
  • Veți dori să setați alinierea textului la centrat , precum și ( label.textAlignment = NSTextAlignmentCenter( UITextAlignmentCenterpentru SDK - uri mai vechi).

Setați culoarea etichetei de text pentru a fi orice culoare personalizată pe care doriți. Tu vrei o culoare care nu provoacă textul să se amestece în umbră, ceea ce ar fi dificil de citit.

Am lucrat asta prin încercări și erori, dar valorile am venit cu sunt în cele din urmă prea simplu pentru ei să nu fie ceea ce Apple a ales. :)

Dacă doriți să verificați acest lucru, picătură acest cod în initWithNibName:bundle:în PageThreeViewController.mal probei NavBar Apple . Aceasta va înlocui textul cu o etichetă galbenă. Acest lucru ar trebui să fie imposibil de distins de original produs de cod Apple, cu excepția culorii.

- (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;
}

Editare: De asemenea, citiți răspunsul Erik B de mai jos. Codul meu arată efectul, dar codul său oferă un mod mai simplu să renunțe la acest lucru în loc pe un controler de vizualizare existent.

Publicat 07/03/2009 la 03:30
sursa de către utilizator

voturi
226

Știu că acest lucru este un fir destul de vechi, dar cred că ar fi util să se știe pentru noii utilizatori care iOS 5 aduce o nouă proprietate pentru stabilirea proprietăților titlu.

Puteți utiliza lui UINavigationBar setTitleTextAttributespentru setarea fontului, culoarea, offset, și umbra de culoare.

În plus , puteți seta aceeași implicit UINavigationBar lui Titlu Text Atributele pentru toate pe UINavigationBarstot parcursul aplicației.

De exemplu, astfel:

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

[[UINavigationBar appearance] setTitleTextAttributes:navbarTitleTextAttributes];
Publicat 26/10/2011 la 23:16
sursa de către utilizator

voturi
180

În iOS 5 puteți schimba culoarea din titlu navigationBar în acest mod:

navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor yellowColor]};
Publicat 26/02/2012 la 17:31
sursa de către utilizator

voturi
127

Pe baza răspunsului lui Steven Fisher am scris această bucată de cod:

- (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];
}

Avantajul acestui cod, pe lângă care se ocupă cu cadrul corespunzător, este că, dacă schimbați titlul controlerului de vedere din titlu personalizat va primi, de asemenea, actualizate. Nu este nevoie să-l actualizeze manual.

Un alt mare avantaj este faptul că face foarte simplu pentru a permite culoare din titlu personalizat. Tot ce trebuie să faceți este să adăugați această metodă la controler.

Publicat 05/05/2011 la 14:52
sursa de către utilizator

voturi
40

Cele mai multe dintre sugestiile de mai sus sunt depreciate acum, pentru iOS 7 utilizare -

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

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

De asemenea, Checkout NSAttributedString.h pentru diverse proprietăți text care ar putea fi stabilite.

Publicat 03/10/2013 la 13:01
sursa de către utilizator

voturi
38

În IOS 7 și 8, puteți schimba culoarea titlul a sa spunem verde

self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor greenColor] forKey:NSForegroundColorAttributeName];
Publicat 19/12/2013 la 17:14
sursa de către utilizator

voturi
20

Pentru a păstra întrebarea până la zi, voi adăuga Alex RR soluție, dar în Swift :

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

Care rezultă în:

introduceți descrierea imaginii aici

Publicat 14/08/2015 la 13:48
sursa de către utilizator

voturi
13

Metoda 1 , a stabilit în IB:

introduceți descrierea imaginii aici

Metoda 2 , o linie de cod:

navigationController?.navigationBar.barTintColor = UIColor.blackColor()
Publicat 08/04/2016 la 13:45
sursa de către utilizator

voturi
13

De la iOS 5, începând trebuie să stabilească titlu de culoare text și font de bara de navigare folosind titleTextAttribute dicționar (dicționar de referință predefinit în clasa controler UInavigation).

 [[UINavigationBar appearance] setTitleTextAttributes:
 [NSDictionary dictionaryWithObjectsAndKeys:
  [UIColor blackColor],UITextAttributeTextColor, 
[UIFont fontWithName:@"ArialMT" size:16.0], UITextAttributeFont,nil]];
Publicat 11/09/2012 la 08:21
sursa de către utilizator

voturi
13

Soluția de tewha funcționează bine dacă încercați să schimbați culoarea pe o pagină, dar vreau să fie capabil de a schimba culoarea de pe fiecare pagină. Am făcut unele mici modificări , astfel încât să lucreze pentru toate paginile de pe unUINavigationController

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
Publicat 24/09/2010 la 03:56
sursa de către utilizator

voturi
10

Swift Versiune

Am găsit cele mai multe dintre voi au prezentat răspunsuri ale versiunii Objective_C

Aș dori să pună în aplicare această funcție prin utilizarea Swift pentru oricine care are nevoie de ea.

În ViewDidload

1.To face NavigationBar de fundal devine de culoare (de exemplu: BLUE)

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

2.To face NavigationBar de fundal devine imagine (de exemplu: ABC.png)

let barMetrix = UIBarMetrics(rawValue: 0)!

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

schimbare 3.To NavigationBar titlu (de exemplu: [Font: Futura, 10] [Culoare: Rosu])

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

(Hint1: „!“ Nu uita marca după UIFont)

(Hint2: există o mulțime de atribute ale textului din titlu, COMMAND faceți clic pe „NSFontAttributeName“ puteți introduce keyNames de clasă și vizualizați și tipurile de obiecte care le necesare)

Sper că pot ajuta: D!

Publicat 09/10/2015 la 10:05
sursa de către utilizator

voturi
10

Utilizați codul de mai jos în orice viewDidLoad vizualizare controler sau metoda 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.
}
Publicat 19/05/2014 la 07:43
sursa de către utilizator

voturi
9

Scurt și dulce.

[[[self navigationController] navigationBar] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor redColor]}];
Publicat 08/12/2013 la 03:50
sursa de către utilizator

voturi
8

Aceasta se bazează pe soluția mea Stevens

Singura diferență reală este am pus unele de manipulare in pentru a ajusta poziția în cazul în care, în funcție de lungimea textului, pare să fie similar cu modul în care Apple face

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];

Este posibil să doriți să ajustați valoarea 10, în funcție de dimensiunea fontului

Publicat 22/10/2010 la 15:28
sursa de către utilizator

voturi
6

Acesta este un fir destul de vechi, dar cred că de a oferi un răspuns pentru setarea Color, dimensiunea și poziția verticală de navigare bara de titlu pentru iOS 7 și de mai sus

Pentru Culoare și Dimensiune

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

Pentru Poziție verticală

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

Set Titlu și atribuiți dicționarului atribute

[[self navigationItem] setTitle:@"CLUBHOUSE"];
self.navigationController.navigationBar.titleTextAttributes = titleAttributes;
Publicat 04/06/2015 la 15:05
sursa de către utilizator

voturi
6

Este recomandat să setați self.title ca acest lucru este utilizat în timp ce împinge navbars copil sau afișarea titlu de pe 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];
    }
}
Publicat 24/05/2012 la 19:50
sursa de către utilizator

voturi
6

Am personalizat imagine de fundal navigationBar și a lăsat elementul buton, iar titlul gri nu se potrivesc fundal. Apoi am folosi:

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

pentru a schimba culoarea tentă gri. Iar titlul este alb acum! Asta vreau.

Sper pentru a ajuta, de asemenea, :)

Publicat 27/05/2011 la 06:37
sursa de către utilizator

voturi
6

Am fugit în problema cu nasturii nav arunca textul din centru (atunci când ai doar un singur buton). Pentru a remedia că am schimbat doar dimensiunea mea de cadru astfel:

CGRect frame = CGRectMake(0, 0, [self.title sizeWithFont:[UIFont boldSystemFontOfSize:20.0]].width, 44);
Publicat 21/01/2011 la 17:07
sursa de către utilizator

voturi
4

Acest lucru funcționează pentru mine în Swift:

navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName:UIColor.white]
Publicat 13/04/2017 la 02:44
sursa de către utilizator

voturi
4

Utilizați ca acest lucru pentru sprijin Orientare

    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];
Publicat 17/01/2011 la 06:28
sursa de către utilizator

voturi
3

O actualizare la postul lui Alex RR folosind noul iOS 7 atribute de text și c obiectiv modern pentru mai puțin zgomot:

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];
Publicat 29/11/2013 la 23:35
sursa de către utilizator

voturi
3

pentru a seta dimensiunea fontului din titlu i-au folosit condiții de mai jos .. Poate cineva să helpfull

if ([currentTitle length]>24) msize = 10.0f;
    else if ([currentTitle length]>16) msize = 14.0f;
    else if ([currentTitle length]>12) msize = 18.0f;
Publicat 15/09/2011 la 12:18
sursa de către utilizator

voturi
2

Eu cred că modul corect de a seta culoarea UINavigationBar este:

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

Codul de mai sus este scris este subclasa pe UINavigationBar, evident funcționează fără subclasarea, de asemenea.

Publicat 09/07/2012 la 23:04
sursa de către utilizator

voturi
2

După ce se confruntă cu aceeași problemă (ca și alții) a etichetei care se mișcă atunci când se introduce un buton în bara de navigare (în cazul meu am un titirez care i înlocuiască cu un buton atunci când este încărcat data), soluțiile de mai sus nu au funcționat pentru mine, așa că aici este ceea ce a lucrat și a păstrat eticheta în același loc tot timpul:

- (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;
Publicat 14/04/2011 la 22:23
sursa de către utilizator

voturi
2

Acesta este unul dintre acele lucruri care lipsesc. Cel mai bun pariu este de a crea propriul dvs. personalizat bara de navigare, adăugați o casetă de text, și să manipuleze culoarea în acest fel.

Publicat 01/03/2009 la 08:11
sursa de către utilizator

voturi
1
 self.navigationItem.title=@"Extras";
    [self.navigationController.navigationBar setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"HelveticaNeue" size:21],
      NSFontAttributeName,[UIColor whiteColor],UITextAttributeTextColor,nil]];
Publicat 30/10/2014 la 05:39
sursa de către utilizator

voturi
1

titleTextAttributes Afișează atributele pentru textul din titlu barului.

@property (nonatomic, copie) NSDictionary * titleTextAttributes Discuție Puteți specifica fontul, culoarea textului, culoarea textului umbră, și umbra textului offset pentru titlul din atributele de text dicționar, folosind tastele de atribute de text descrise în NSString UIKit adăugări de referință.

Disponibilitate Disponibil în iOS 5.0 și mai târziu. Declarată în UINavigationBar.h

Publicat 07/10/2012 la 06:51
sursa de către utilizator

voturi
1

Se poate folosi această metodă în fișierul appdelegate și se poate utiliza la fiecare vizualizare

+(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;
}
Publicat 20/08/2012 la 11:47
sursa de către utilizator

voturi
1

Ar trebui să apelați [etichetă sizeToFit]; după stabilirea textului pentru a preveni compensările ciudate atunci când eticheta este repoziționată în mod automat în vizualizarea din titlu atunci când alte butoane ocupă bara nav.

Publicat 16/03/2011 la 06:11
sursa de către utilizator

voturi
0

Swift 4 Versiune:

self.navigationController.navigationBar.titleTextAttributes = [
        NSAttributedStringKey.foregroundColor: UIColor.green]
Publicat 23/06/2018 la 08:41
sursa de către utilizator

voturi
0

Sunt folosind codul de mai jos pentru iOS 9 și amenda de lucru pentru mine. Am folosi, de asemenea de culoare umbra pentru titlu.

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]];

Fie ca te ajuta acest lucru.

Mulțumiri

Publicat 12/07/2016 la 06:40
sursa de către utilizator

voturi
0

Pentru a face o soluție mare Erik B mai utilizabil în cadrul diferitelor UIVIewCOntrollers ale aplicației I recomandăm să adăugați o categorie pentru UIViewController și declară SetTitle lui: metoda din titlu interior. Ca acest lucru vei primi schimbarea de culoare din titlu pe toate controlerele vedere, fără a fi nevoie de duplicare.

Un lucru de remarcat este că, deși nu aveți nevoie [super-SetTitle: Denumirea funcției]; în codul Erik și că va trebui să invocați în mod explicit self.title = @ „noul meu titlu“ în controlere dvs. de vizualizare pentru această metodă să fie numit

@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];
}

@Sfârşit

Publicat 31/12/2012 la 11:48
sursa de către utilizator

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