ios - 如何使我的类(class)符合外部协议(protocol)?它找不到它,但我的印象是我不应该在 .h 文件中导入

标签 ios objective-c cocoa-touch delegates protocols

我在 ClassA 中定义了一个协议(protocol), 并且想要 ClassB为了符合它,所以在 ClassB我有 <ClassADelegate> .

然而,它一直提示找不到那个特定的协议(protocol)。我明白为什么,我声称符合 .h 文件中的协议(protocol),但该类是 #import编辑在 .m 文件中,所以它还不知道它。

所以我尝试了转发@class声明,甚至是转发 @protocol声明,但没有一个工作,它仍然不知道我指定的协议(protocol)。

我唯一的选择似乎是将其导入 .h 文件而不是 .m 文件,但是 everything I've heard表示您不应该在 .h 中导入,我个人一直被循环引用错误所困扰,对此我很犹豫。

我该怎么办?

最佳答案

尝试清理您的项目并构建它。我有类似的问题,做一个干净的构建解决了这个问题。

关于ios - 如何使我的类(class)符合外部协议(protocol)?它找不到它,但我的印象是我不应该在 .h 文件中导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21943606/

相关文章:

objective-c - 什么时候应用程序状态属于核心数据而不是 NSUserDefaults?

iphone - 读取崩溃日志并将其发送到服务器

ios - 如何以编程方式获取设备的当前方向?

ios - 使用 react-native-webrtc 断开视频通话

ios - 如何在没有委托(delegate)的情况下处理 UITextField 值更改?

android - Cordova 视频/音频无法从 cdvfile ://urls after update to 3. 3.0 播放

ios - 生成文件并将其附加到移动浏览器客户端的电子邮件中

objective-c - unsafe_retained 属性

iphone - 如何在 UINavigationController 中的所有 View 前面显示一个 UIButton?

ios - 在 ViewWillAppear 上创建 UIAlertController 会发出警告