我有一個UINavigationBar,它在應用程序委託類中設置了一個背景圖像,所以你可以想像爲什麼我不喜歡導航欄是半透明的。我相信這是這種情況的罪魁禍首:http://imgur.com/v3e0NIoiOS 7 UINavigationbar setTranslucent:NO崩潰應用
不管怎麼說,當我把這一行代碼:
[[UINavigationBar appearance] setTranslucent:NO];
在我的AppDelegate我遇到這樣的錯誤:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** Illegal property type, B for appearance setter, _installAppearanceSwizzlesForSetter:'
即使當我嘗試單獨使每個UINavigationbar在每個類中都不透明,我仍然在圖像中有那個愚蠢的白色條!沒有錯誤被拋出,這讓我想知道代碼是不是工作,或者如果透明度不是我的問題?
謝謝!
編輯:
下面是我用我的AppDelegate進行檢測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];
即使當我做UIViewController的背景黑色,白色酒吧仍然存在..我現在非常懷疑透明度是我的問題!
我不想做一個自定義導航欄.. – user1064249