Xcode突然显示此错误:“未知类型名称”
我会解释: 我的StoriesViewController.h:
#import <UIKit/UIKit.h>
#import "Stories.h"
@interface StoriesViewController : UIViewController <UITextViewDelegate>
@property (strong) Stories *story; //Here it goes- "Unknown type name `Stories`"
@property (weak) IBOutlet UITextView *storyView;
@end
在我的Stories.h中:
#import <UIKit/UIKit.h>
#import "ViewController.h"
@interface Stories : UIDocument
@property (strong) NSString * storyContent;
@end
再次,突然之间。
提前致谢。
编辑:
在我的ViewController.h中:
#import <UIKit/UIKit.h>
#import "Stories.h"
#import "StoriesViewController.h"
#import "StoriesPickerViewController.h"
#import <QuartzCore/QuartzCore.h>
@interface ViewController : UIViewController <UITextFieldDelegate, UIAlertViewDelegate> {
}
@end
NB @class会引发大量ARC问题。
我删除了对ViewController.h的无用引用。 解决!
答案 0 :(得分:12)
您遇到circular reference问题。
正在发生的事情是,当您加载ViewController
时,它会通过它的导入,它会加载Stories.h
,它会加载它的导入并返回ViewController.h
,所以你是陷入无限循环。
删除其中一个有冲突的导入,或使用forward class declaration(该示例适用于C ++,有关Objective-C的示例,请参阅here)