知道未知的类型名称?

时间:2012-09-05 14:24:51

标签: ios xcode

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的无用引用。 解决!

1 个答案:

答案 0 :(得分:12)

您遇到circular reference问题。

正在发生的事情是,当您加载ViewController时,它会通过它的导入,它会加载Stories.h,它会加载它的导入并返回ViewController.h,所以你是陷入无限循环。

删除其中一个有冲突的导入,或使用forward class declaration(该示例适用于C ++,有关Objective-C的示例,请参阅here