缺少'@end'// @end必须出现在objective-c上下文中

时间:2013-01-18 10:55:21

标签: iphone ios objective-c xcode4.5

这是我的代码:

 #import <UIKit/UIKit.h>
   @interface CustomCellArticle: UITableViewCell
   @property(nonatomic,retain) IBOutlet UILabel *name;
   @end

我第一次收到此错误:

Missing @end
Expected identifier or '('

在第一个代码中,它要求我在第一个中添加@end来修复它。 代码变成这样:

 #import <UIKit/UIKit.h>
   @end //here the seconde error
   @interface CustomCellArticle: UITableViewCell
   @property(nonatomic,retain) IBOutlet UILabel *name;
   @end

当我添加它时,我收到了一个新错误:

@end must appear in an Objective-C context

我不知道到底发生了什么,请帮忙! 我在另一个项目中使用了相同的类,它工作正常!

4 个答案:

答案 0 :(得分:9)

是的,这是来自另一个已预先导入的标头或实施文件缺少@end

它可能是.h或.m文件

答案 1 :(得分:0)

@end应该只在一个文件中出现一次。有什么顶部@ end.And导入顶部的所有文件?

答案 2 :(得分:0)

您可能在@end行之前打开了一个永远不会以“}”结束的“{”...

所以,错误不在@end行...但是xcode只是发现你错过了一个“}”或“)”

答案 3 :(得分:-1)

让我显示整个文件.h和.m文件然后我可以很好地回答没问题。

您需要从.h文件中删除第一个@end并运行以解决问题。

而不是:

#import <UIKit/UIKit.h>

@end

@interface CustomCellArticle:UITableViewCell

@property(强,非原子)IBOutlet UILabel *名称;

@end

使用此:

#import <UIKit/UIKit.h>

@interface CustomCellArticle:UITableViewCell {

} @property(强,非原子)IBOutlet UILabel *名称;

@end

愿这对你有所帮助。这对我来说很好。

我也检查了xcode。您只需要先删除@end

如果这件事不起作用,你会遇到另一个问题。