-1

我正在一个项目中工作,我从上一个 Xcode 4 版本开始,当我打开并尝试使用新的 Xcode 5 运行它时,我在 UIPushBehavior.h 和 UIGravityBehavior.h 中都遇到了这个错误。

/Applications/xcode 4/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPushBehavior.h:34:34:未知类型名称'CGVector';您指的是 'CIVector' 吗?

并且不编译我的项目。

任何有关如何解决此问题的想法将不胜感激。

4

2 回答 2

2

好吧,我修复了错误。问题依赖于标题搜索路径和库搜索路径都指向项目目录,因此项目使用的 UIKit 是旧的。

在我的情况下,我通过将标题搜索路径更改为: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u‌​sr/include 来解决问题。

并让库搜索路径指向我的项目文件夹:

$(SRCROOT)/project_name

棘手的一个,因为它在 XCode 5 5A1413 之前的任何版本中编译。

希望这对其他人有帮助。

于 2013-10-02T17:22:17.773 回答
0

CGVector 是 CGGeometry 的一部分

要解决您的问题,请确保 ApplicationServices 框架包含在您的项目中,并且“ #import <CoreGraphics/CGGeometry.h>”位于您的 .m 文件的顶部。

哦,仔细查看文档,我发现 CGVector 在 iOS 7 及更高版本中可用。这意味着如果在您使用 Xcode 5 之前有其他东西定义它,您的项目中可能有一个冲突类型。

于 2013-09-28T19:51:58.070 回答