我试图让我的UINavigationBar
和UIStatusBar
变得不透明,并且没有任何半透明属性。我尝试使用[[UINavigationBar appearance] setTranslucent:NO];
,但会将视图内容向下移动几个像素。我希望该内容位于UINavigationBar
之下。有一个简单的方法吗?
答案 0 :(得分:2)
当我使用[[UINavigationBar外观] setTranslucent时,我遇到了同样的问题:NO];在AppDelegate.m上。什么对我有用:设置"在不透明的酒吧"在该不透明导航栏下的每个ViewController场景中的(参见图像)属性
答案 1 :(得分:1)
尝试更改UIViewControllers的以下属性,以消除iOS7的像素移位效果。
答案 2 :(得分:0)
首先,无法使用UIAppearance
设置半透明属性。接下来,你的酒吧是半透明的还是不透明的并没有关系。你像素的位置改变了。
自定义导航栏的外观
在iOS 7中,导航栏的tintColor会影响后指示图像,按钮标题和按钮图像的颜色。 barTintColor属性会影响条形本身的颜色。此外,导航栏默认为半透明。关闭或打开半透明不会影响按钮,因为它们没有背景。
答案 3 :(得分:0)
在我的IOS应用中,我需要在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
功能
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
[application setStatusBarStyle:UIStatusBarStyleLightContent];
self.window.clipsToBounds =YES;
self.window.frame = CGRectMake(0,20,self.window.frame.size.width,self.window.frame.size.height-20);
//Added on 19th Sep 2013
self.window.bounds = CGRectMake(0, 20, self.window.frame.size.width, self.window.frame.size.height);
}
此处有更详细的讨论ios-7-status-bar-back-to-ios-6-style