未知的类型名称'UIImage'

aen*_*awi 37 xcode5 xcode6

我最近将XCode从5.1.1升级到了XCode 6.0.1.现在,每当我想定义一个新的UIImage对象时,我都会收到此错误:

Unknown type name 'UIImage'

代码:
1.创建一个新项目
2. Image View向storyboard 添加控件
3. Image View通过添加IBOutlet 引用
4.添加新的类文件
5.将以下代码行添加到新类的头文件中:

@property (strong, nonatomic) UIImage *background;

头文件(.h)内容:

#import <Foundation/Foundation.h>

@interface CCTile : NSObject

@property (strong, nonatomic) NSString *story;
@property (strong, nonatomic) UIImage *background; // Error: Unknown type name 'UIImage'

@end

但是,如果我添加#import <UIKit/UIKit.h>到头文件(上面),一切似乎都可以!有什么想法,我在这里缺少什么,拜托?这是XCode头文件的变化!

小智 83

我也有同样的问题,并使用它修复它

#import <UIKit/UIKit.h>
Run Code Online (Sandbox Code Playgroud)

然而,我挖了一些更多,并比较了XCode 6中的项目与Xcode 5相比,我注意到Xcode 6没有创建前缀头文件.前缀头文件隐式导入到每个类中,前缀头文件(.pch)包括UIKit和Foundation.

要创建pch文件,请转到文件 - >新建 - >文件 - >其他 - > PCH文件.将名称编辑为"YourProject-prefix.pch".添加以下内容:

#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#endif
Run Code Online (Sandbox Code Playgroud)

然后,您需要设置构建设置.转到您的项目 - >构建设置 - >搜索顶部:前缀标题.

您将看到Precompile Prefix Header - >更改为yes.此外,下面是前缀标题.添加前缀标头的路径.应该是:"YourProject/YourProject-prefix.pch".


Bal*_*dav 10

对于未知类型名称"UIImage"或任何所需的UI对象.

#import(UIKit)这将解决您的问题.这对我有用....

  • 我注意到了!我想知道为什么XCode 6会发生这种情况!在XCode 5中,我不记得我必须为正常UI对象#import任何额外的头文件. (2认同)

Nit*_*esh 6

陷入同样的​​问题.通过这样做解决了它

#import <UIKit/UIKit.h>
Run Code Online (Sandbox Code Playgroud)

荣誉苹果:P