Mam pasek UINavigationBar, który ma obraz tła skonfigurowany w klasie delegatów aplikacji, więc możesz sobie wyobrazić, dlaczego nie chciałbym, aby pasek nawigacyjny był półprzezroczysty. Uważam, że jest sprawcą tego: http://imgur.com/v3e0NIoiOS 7 Zestaw paska nawigacji UCI: Translucent: aplikacja NO crashes
Anyways kiedy mogę umieścić ten wiersz kodu:
[[UINavigationBar appearance] setTranslucent:NO];
w moim AppDelegate napotykam ten błąd:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** Illegal property type, B for appearance setter, _installAppearanceSwizzlesForSetter:'
Nawet gdy próbuję indywidualnie spraw, aby każdy pasek UINavigationbar był nieprzejrzysty w każdej klasie, wciąż mam ten głupi biały pasek na obrazku! Żadne błędy nie są generowane, co powoduje, że zastanawiam się, czy kod po prostu nie działa, czy też przezroczystość nie jest moim problemem?
Dzięki!
EDIT:
Oto kod używam w moim AppDelegate aby niestandardowe tło dla NavBar:
[[UINavigationBar appearance] setTitleTextAttributes: @{
UITextAttributeTextColor: [UIColor whiteColor],
UITextAttributeTextShadowColor: [UIColor blackColor],
UITextAttributeTextShadowOffset: [NSValue valueWithUIOffset:UIOffsetMake(0.0f, 1.0f)],
UITextAttributeFont: [UIFont fontWithName:@"Code-Bold" size:23.0f]
}];
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:NO];
UIImage *navBarImage = [[UIImage imageNamed:@"menubar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(5, 15, 5, 15)];
[[UINavigationBar appearance] setBackgroundImage:navBarImage forBarMetrics:UIBarMetricsDefault];
Nawet gdy robię UIViewController jest czarny, biały pasek jest wciąż tam ... Teraz mam wątpliwości, że przejrzystość to mój problem!
raczej nie sprawiają zwyczaj NavigationBar .. – user1064249