【问题标题】:Building with iOS7 produces iOS6 looking widgets使用 iOS7 构建会生成外观为 iOS6 的小部件
【发布时间】:2013-10-07 10:28:38
【问题描述】:

在迁移到 XCode 5 和 iOS7 基础 SDK 之后,我的应用程序中的一些 UI 小部件在 iOS7 设备上仍然看起来像 iOS6 风格(渐变、框架)。这不会发生在 iOS7 的等效模拟器上。这也不会发生在所有小部件上,UIDocumentInteractionController 的弹出窗口在设备上看起来像 iOS7,但 UIPopoverController 不会。用于重命名文件的键盘也显示了模拟器和设备之间的这种差异。

iOS 如何确定 UI 元素的视觉风格?它是基于静态链接库还是在运行时确定的?我已经尝试从设备中完全清除应用程序,但没有任何改变。

Retina iPad 模拟器:UIPopoverController

装有 iOS 7 的第三代 iPad:UIPopoverController

本例中的代码相当简单,没有自定义渲染或布局。

self.poController = [[UIPopoverController alloc] initWithContentViewController:audioCopyController];
[audioCopyController showDoneButton:NO];
audioCopyController.view.frame = CGRectMake(0,0,350,250);
_poController.popoverContentSize = audioCopyController.view.bounds.size;
_poController.delegate = self;
[_poController presentPopoverFromRect:view.audiocopyButton.frame
                                           inView:view
                         permittedArrowDirections:UIPopoverArrowDirectionDown
                                         animated:YES];

提前感谢您的帮助。

【问题讨论】:

  • 您使用的是哪款设备(包括 Generation)?
  • 第三代 iPad,虽然这个问题也出现在 iPad Mini 上。
  • 谢谢老兄..!!你救了我的命..即使我的机器上有 iOS 6.1 SDK,正因为如此,我的 iOS7 应用程序看起来像 iOS6..删除旧的 SDK 解决了我的问题..!!谢谢..
  • 很高兴听到它有帮助。如果可以的话,请投票给下面的答案。

标签: ios ipad ios7 uipopovercontroller xcode5


【解决方案1】:

检查您的项目配置文件和目标配置文件。 它可能是使用 iOS 6.X 基础 SDK 设置的。

为此:

  • 在 Xcode 5 中转到您的项目配置文件
  • 单击构建设置选项卡
  • 编辑基本 SDK 字段以将其切换到 iOS 7。

有时,我们会遇到 Xcode 未考虑当前设置的问题。

更改和编译有助于它了解需要更改。

确保为您的项目配置和运行它的每个目标配置文件正确配置。

您可能有 2 个不同的目标用于模拟器和您的设备。

希望这会有所帮助 问候

大卫

【讨论】:

  • David,将此设置为“最新的 SDK 7.0”,并按照您的建议手动将其设置为 7.0,但不幸的是,这并没有解决问题。不过感谢您的建议!
【解决方案2】:

好的,我发现了问题所在。大卫的建议让我思考。

我同时维护多个应用程序,其中一个已经很旧了。 XCode5 中的新 Interface Builder 打破了旧应用程序中许多字段的透明度,因此我将 XCode4 保存在 XCode5 旁边的单独安装文件夹中。似乎不知何故我的 XCode5 项目仍然指向 XCode4 的 SDK 文件夹(不确定这是怎么可能的,查看实际的链接器命令行可能会有所启发),所以从我的机器上删除 XCode4 的 6.1 SDK 文件夹后,一个使用 XCode 5 的干净构建在我支持 iOS 的应用程序中生成了正确的 iOS 7 外观小部件。

故事的寓意是,在同一台机器上安装多个 XCode/SDK 时要非常小心。希望这可以帮助其他可能正在尝试类似方法为旧版应用程序提供支持的人。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-17
    相关资源
    最近更新 更多