【发布时间】:2013-10-16 23:18:04
【问题描述】:
我为 iOS 6 编译了这个应用程序。这是从 iOS 4.3 升级的代码,在那里运行良好。
创建分段控件后,其图标只是alpha通道,控件是透明的。
这就是我创建它的方式
// images is a NSArray of images. I have confirmed.
// All images are OK and are loading fine on this array.
// Images have alpha channel. They are basically solid
// rounded icons with shadows surrounded by transparent pixels
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:images];
[segmentedControl addTarget:self action:selector(change:)
forControlEvents:UIControlEventValueChanged];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
这就是我对控件的看法。请注意与 Alpha 通道上的图标阴影对应的模糊蓝色右边框。此外,另一个问题是它是蓝色的。我从未在此控件上调整过任何蓝色。这在 iOS 4.3 上运行良好。
有什么线索吗?
编辑:一旦我用文本替换图像,分段控制就会正确渲染:不透明且永远没有蓝色。现在WTF等级提高了。
我创建了一个示例项目,其中包含 3 个红色图像,对于某些 WTF 因素显示为蓝色。在此处下载项目:http://www.fileswap.com/dl/RVf7UuwKhf/
【问题讨论】:
-
很抱歉,您是在 xcode 5 或更早版本上运行它吗?
-
Xcode 5. 我已经上传了一个显示问题的示例项目...这里:fileswap.com/dl/RVf7UuwKhf
-
您的项目似乎正在运行fine here。话虽这么说,您的问题似乎是图像由于某种原因被 iOS7 视为模板,因此是蓝色(这是您的全局
tint颜色) -
看到了吗?它不适合你。你看到的是蓝色的字母。看图像。它们是红色的。我在 Xcode 4 中尝试过。同样的问题,但我认为 Xcode 5 改变了项目,现在 Xcode 4 也错误地呈现它。
-
我在 Xcode 4.63 上打开了原始文件。工具栏看起来很好,很痛。