IOS 5 Навигация тақтасындағы артқы түйменің түсін өзгертуге болады?

I want to change the color of back button of a navigation bar to make it look like thisenter image description here

13

5 жауаптар

backBarButtonItem tintColor параметрін орнатыңыз:

self.navigationItem.backBarButtonItem.tintColor = [UIColor redColor];

TIP: If you want this to be applied to all UIBarButtonItem instances in your application by default, then you can use the new UIAppearance API to do just that:

[[UIBarButtonItem appearance] setTintColor:[UIColor redColor]];
63
қосылды
@NileshTupe Мен ұсынған кодтың басқа жолын қолданыңыз, ол басылған көрініс контроллері контекстінде жұмыс істеуі керек.
қосылды автор Jacob Relkin, көзі
Мен бұл әрекетті көрдім (void) viewDidLoad {[super viewDidLoad]; UIImageView * image = [[UIImageView alloc] initWithImage: [UIImage imageNamed: @ «logobar.png»]]; NSLog (@ «Frame ==% f», image.frame.size.width); self.navigationItem.backBarButtonItem.tintColor = [UIColor redColor]; self.navigationItem.titleView = сурет; NSLog (@ «% f», self.navigationItem.titleView.frame.size.width); }, бірақ ол жұмыс істемейді
қосылды автор Nilesh Tupe, көзі
2-ші әдіс Рахмет болды
қосылды автор Nilesh Tupe, көзі
[[UIBarButtonItem көрінісі] setTintColor: [UIColor redColor]]; Бұл әдіс iOS 5.0 нұсқасына немесе одан төмен нұсқаларға қалай жұмыс істеуге болады?
қосылды автор Nilesh Tupe, көзі
Мен бұл коды көрнекі көрініс контроллерінің көру әдісімен қарауға қойдым. Бірақ ол әсер етпейді.
қосылды автор Nilesh Tupe, көзі
Сіз бірінші жолды көрмеген қараушы контроллерініңDidLoad түріне қоюға болмайды. Оны PUSHING көру контроллерінің ViewDidLoad түріне қою керек және одан басылған барлық контроллер дұрыс артқа түймесіне ие болады.
қосылды автор Accatyyc, көзі
Сіз шешім таптыңыз ба? Мен бұған қол жеткізгім келеді ...
қосылды автор Redwarp, көзі

Jacob жауапының бірінші жолы маған жұмыс істемеді, себебі backBarButtonItem NULL болды. Бұл NULL, себебі ол басқа ViewController-ге ауысқан кезде автоматты түрде жасалады. Сол кезде түйменің тақырыбын белгілей аласыз

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

бірақ сіз tintColor параметрін орната алмайсыз.

Мен үшін қандай жұмыс істеді, жаңа стильсіз UIBarButtonItem жасау болды. Содан кейін атау мен түстер сипаттарын орнатыңыз және оны backBarButtonItem ретінде орнатыңыз.

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];
8
қосылды
Рахмет. Бұл тамаша жұмыс істейді.
қосылды автор Philip007, көзі

Егер түймені өз суреттеріңізге ұқсас етіп жасағыңыз келсе, суретіңізді де пайдалануға болады:

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

Фондық сурет жақсы нәтиже алу үшін өлшемді кескін болуы керек.

3
қосылды
[[UINavigationBar appearance]setTintColor:[UIColor whiteColor]];

бұл мен үшін жұмыс істейді ...

1
қосылды

Мен оны жаһандық немесе жергілікті деңгейде орнатудың ең жақсы жолы

    [[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];
0
қосылды