[英]Problem in Importing File
我正在导入文件“FieldActivityViewController.h” 。但显示错误
“/Users/rupeshnandha/Downloads/AQMD Release 3/Classes/InputChoice.h:22:0 /Users/rupeshnandha/Downloads/AQMD Release 3/Classes/InputChoice.h 中‘FieldActivityViewController’之前的预期说明符-限定符列表”
正如“InputChoice.h”中编写的代码一样
#import "FieldActivityViewController.h"
@protocol InputChoiceProtocol <NSObject>
@required
-(void) inputChoiceSelectedIndex :(int) index;
@end
@interface InputChoice : UIViewController {
//NSString *keyString;
FieldActivityViewController *field_act;
NSMutableArray *selectionArray;
IBOutlet UITableView *table;
NSObject<InputChoiceProtocol> *delegate;
// IBOutlet UIPickerView *picker;
}
@property (nonatomic,retain) NSArray *selectionArray;
@property (nonatomic,retain) FieldActivityViewController *field_act;
@property (nonatomic,retain) NSObject<InputChoiceProtocol> *delegate;
@end
在.h 文件中导入应用程序类不是一个好习惯。
尝试使用前向 class 声明并将您的FieldActivityViewController
文件导入.h
与前向 class 声明一起使用@class FieldActivityViewController;
在你的import
声明的地方。
使用@class FieldActivityViewController
最可能的原因是您有循环依赖。 InputChoice.h
导入FieldActivityViewController.h
和FieldActivityViewController.h
导入InputChoice.h
(不一定直接)。
最好的解决方案是将导入从 header 文件中移出到.m
文件中并放入
@class FieldActivityViewController;
在InputChoice.h
和
@class InputChoice
在FieldActivityViewController.h
(或 header 中包含InputChoic.h
的任何一个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.