No Visible @interface声明选择器'deleteAllObjects'

时间:2012-10-01 22:19:11

标签: ios core-data

当我尝试删除Mans CoreData Entity中的所有对象时,我收到此错误。

No visible @interface for 'CoreDataController' declares the selector 'deleteAllObjects:'

这是因为我在CoreDataController类中调用它。

[self deleteAllObjects:@"Mans"];

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您必须确保CoreDataController类提供了一个可见的声明,表明它实现了deleteAllObjects。在最新版本的Xcode中,同一@implementation块中的方法应该彼此可见。同样,在主.m文件中,有一个类扩展;声明在那里的所有方法对文件中的方法都是可见的。在旧版本的Xcode中,任何私有的实现文件方法也必须在那里声明。如果您的方法是在类别中声明的,则必须确保在引用之前导入类别标题。