Receiver'ClassName'是一个转发类,对应的@interface可能不存在

diz*_*izy 13 iphone objective-c

我目前正试图UIPickerTable在UIPickerView.subviews中找到...所以我循环并做isKindOfClass:[UIPickerTable class]....有效..但因为UIPickerTable的标头没有暴露我收到警告"接收器'UIPickerTable'是一个转发类和相应的@interface可能不存在'

为了甚至能够编译我做@class UIPickerTable,显然它想要我#include它.

我想知道是否有办法绕过这个警告.

TIA!

bub*_*ier 48

也许你@class UIPickerTable的.h文件中有你没有#import UIPickerTable.h{RootViewController} .m文件


Mar*_*sey 5

我不认为您可以使用编译器选项来抑制该警告.你可以通过简单地为类创建自己的头文件来消除它,包含:

@interface FacesViewController : NSObject {
}
Run Code Online (Sandbox Code Playgroud)

我想不用说,让你的应用程序依赖于UIKit类的内部结构可能不是最好的策略.据推测,你有充分的理由在UIPicker内部捣乱......

  • 为什么不简单地使用`NSClassFromString(@"UIPickerTable")` (3认同)