Xcode 5 - iOS7设备上的错误接口

时间:2013-09-16 10:32:43

标签: interface-builder ios7

我对项目的设置:

  • 部署目标:iOS6.1
  • Base SDK:7.0
  • IB Document:以5.0开启

当我在模拟器(7.0)中运行app时,我几乎看到了我的期望(我不明白为什么barbuttons不使用颜色色调 - 在之前的屏幕上显示为蓝色): enter image description here

但是如果app在设备上运行(也是7.0), 然后我看到: enter image description here 正如您所看到的,这是某种iOS6 UI,但是tableview位于导航栏下,后者变得透明。

为什么会这样?

2 个答案:

答案 0 :(得分:1)

在iOS 7.0上,tintColor对条形图的行为发生了变化,请查看下图:

enter image description here

现在要更改条形按钮的色调颜色,您需要使用tintColor,这是导航栏中交互元素的颜色,包括按钮图像和标题。

虽然barTintColorUINavigationBar的背景色。

所以基本上 对于按钮和标题:

[[UINavigationBar appearance] setTintColor:[UIColor grayColor]];

对于酒吧色调:

[[UINavigationBar appearance] setBarTintColor:[UIColor lightGrayColor]];

对于navBar部分下的tableVIew,设置navigationBar.translucent = NO;

答案 1 :(得分:0)

我在IB中启用了Autolayout,现在它也在设备上使用iOS7。 更新:一段时间后,它再次开始显示奇怪的设计。只有在我将iOS7设置为基础和部署SDK之后它才会消失。