我已经阅读了关于词汇和预处理器问题的另一个问题,我试图使用有助于解决问题的方法。不幸的是,这些解决方案都没有帮助纠正这个问题。这个错误无处不在,我不知道除了阅读之外我能做些什么来解决这个问题。请帮忙!
以下是我收到错误的代码:
#import <UIKit/UIKit.h>
@interface scanshootViewController : UIViewController
<UINavigationControllerDelegate, UIImagePickerControllerDelegate>
{
IBOutlet UIImageView *imageView;
UIImagePickerController *imagePicker;
}
@property (nonatomic, retain) UIImageView *imageView;
-(IBAction) btnClicked:(id) sender;
@end
答案 0 :(得分:1)
到达项目中的Frameworks文件夹,右键单击UIKit.Framework&gt;在发现者中显示。
如果Headers文件夹为空,表示您没有正确的文件,我只是意识到一些干净的应用程序会从您的计算机中删除.h文件(...是的,信不信由你);
解决方案:
1)复制整个iPhoneOS.platform&amp;来自其他XCode安装的iPhoneSimulator.platform文件夹
2)重新安装XCode(ups ...)
答案 1 :(得分:0)
尝试删除应用的“派生数据”文件夹 - 您可以在管理器的“项目”标签中找到它。你可以在Finder中找到它,在Xcode中关闭项目,删除文件夹,重新打开项目,然后尝试构建。如果没有关闭项目,请删除项目文件中以userID开头的每个目录(或者只是重命名),重新打开,重建。
编辑:更多建议
1)查看Target的“使用标准系统标题目录搜索”并确保其为“是”。
2)在你的.pch文件中,你应该有:
#import <Availability.h>
#ifndef __IPHONE_4_0
#warning "This project uses features only available in iOS SDK 4.0 and later."
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
尝试在 OBJC 下的iteslf的行中添加“Hello”以验证在构建时,您到达(并获得致命错误) - 这将证明 OBJC 已定义。
3)创建一个全新的项目 - iOS一个视图。确保它构建并运行(如果不是Xcode的话)。然后在项目旁边打开项目Build Settings,并逐行查看,看看有什么不同。
4)如果所有其他方法都失败了,请将项目移动到其他目录,创建一个新目录,然后将所有文件添加回新项目中。这显然是最糟糕的解决方案。
答案 2 :(得分:0)
我遇到了同样的问题。原因是我不小心将“Build Settings”中的“Base SDK”设置为“Current OS X”而不是“Latest iOS”。当我将其设置回“最新iOS”时,构建错误消失了。
答案 3 :(得分:0)
答案 4 :(得分:0)
FWIW,我有一个类似的问题试图改进github上的一些代码。
我不明白为什么它找不到UIColor
而不能#import <UIKit/UIKit.h>
直到我意识到它是为OSX而不是为iOS构建!!!
所以我把它放在.h文件的开头:
#import "TargetConditionals.h"
#if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
#import <UIKit/UIKit.h>
#define HXColor UIColor
#else
#import <Cocoa/Cocoa.h>
#define HXColor NSColor
#endif
@interface HXColor (HexColorAddition)
HTH