Навигационната лента не е прозрачна

Apple казва това:

barTintColor

Този цвят е полупрозрачен по подразбиране, освен ако не зададете свойството translucent на NO.

Защо кодът ми създава непрозрачна лента за навигация?

self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:0/255.0f     green:119/255.0f blue:255/255.0f alpha:1.0f];

Опитах се да добавя това за всеки случай, но без успех.

self.navigationController.navigationBar.translucent = YES;

Благодаря


person Nathan    schedule 13.03.2014    source източник


Отговори (3)


Вместо това

self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:0/255.0f     green:119/255.0f blue:255/255.0f alpha:1.0f];

защо не опиташ да зададеш цвета на фона

self.navigationController.navigationBar.backgroundColor = [UIColor colorWithRed:0/255.0f     green:119/255.0f blue:255/255.0f alpha:1.0f];

Барът е полупрозрачен :)

Според вашите нужди. Това ще даде плътен цвят на лентата за навигация

NSArray *ver = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."];
if ([[ver objectAtIndex:0] intValue] >= 7) {
self.navigationController.navigationBar.barTintColor = [UIColor redColor];
self.navigationController.navigationBar.translucent = NO;
}else {
self.navigationController.navigationBar.tintColor = [UIColor redColor];
}
person Harsh    schedule 13.03.2014
comment
Благодаря, но след това цветът става много, твърде блед. Не мога да го направя толкова тъмен, колкото ако ръчно плъзнах лента за навигация и избрах цвят с отметка за полупрозрачен. Това изобщо не изглежда правилно. - person Nathan; 14.03.2014
comment
Можете да промените алфа стойността и да получите желания резултат! - person Harsh; 14.03.2014
comment
Полупрозрачната навигационна лента няма пълни и наситени цветове. Ако цветът на фона на ViewController е бял, навигационната лента ще изглежда по-ярка. - person filou; 14.03.2014
comment
Всичко над 1.0 не прави разлика. Съжалявам, чувствам, че трябва да пропускам нещо наистина очевидно, но просто не работи. filou: Ако плъзна в лентата за навигация и я оцветя, цветът е много по-тъмен, отколкото с този код. - person Nathan; 14.03.2014
comment
можеш ли да обясниш какво точно искаш да постигнеш? т.е. какъв е вашият фонов цвят и какво искате да има вашата навигационна лента? - person Harsh; 14.03.2014
comment
Навигационната лента ще има превъртащ се текст под нея, но аз искам тя да е синя на цвят. - person Nathan; 14.03.2014
comment
Редактира публикацията според вашите нужди. Сега можете да имате плътен цвят и полупрозрачен цвят. Не би трябвало да има проблем с това - person Harsh; 14.03.2014

Много по-лесно е да използвате проксито за "външен вид" във вашето приложениеDelagate.m. Във вашия метод didGinishLaunchingWithOptions включете:

[UINavigationBar appearance].translucent = NO;
person Dennis Hansen    schedule 16.08.2015

Суифт 4

  navigationController!.navigationBar.isTranslucent = false;
person barrylachapelle    schedule 03.06.2019