1

我对项目的设置:

  • 部署目标:iOS6.1
  • 基础 SDK:7.0
  • IB 文件:在 5.0 中打开

当我在模拟器(7.0)中运行应用程序时,我几乎看到了我所期望的(我不明白为什么条形按钮不使用颜色 - 在之前的屏幕上它显示为蓝色): 在此处输入图像描述

但是如果应用程序在设备上运行(也是 7.0),那么我看到: 在此处输入图像描述 正如你所看到的,这是某种 iOS6 UI,但 tableview 位于导航栏下方,变得透明。

为什么会这样?

4

2 回答 2

1

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

在此处输入图像描述

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

WhilebarTintColorUINavigationBar.

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

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

对于条形色调:

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

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

于 2013-09-16T10:42:57.330 回答
0

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

于 2013-09-16T10:50:06.160 回答