ios – 框架中的Swift协议

ios – 框架中的Swift协议,第1张

概述所以我有这个奇怪的问题,在过去的几个小时里一直困扰着我. 我有一个框架,我在其中创建了一个名为ChatDelegate的协议(代码如下) public protocol ChatDelegate: class { func chat(_ chatCollectionView: UICollectionView, didSelect message: Message)} 和一个ViewCo 所以我有这个奇怪的问题,在过去的几个小时里一直困扰着我.

我有一个框架,我在其中创建了一个名为ChatDelegate的协议(代码如下)

public protocol ChatDelegate: class {   func chat(_ chatCollectionVIEw:  UICollectionVIEw,dIDSelect message: Message)}

和一个VIEwController(不在框架中),它符合ChatDelegate,就像这样

extension ChatContainerVIEwController: ChatDelegate {   func chat(_ chatCollectionVIEw: UICollectionVIEw,dIDSelect message: Message) {      print("dID select")   }}

但编译器仍然抱怨ChatContainerVIEwController不符合协议,我不明白为什么??该函数具有完全相同的标题(我也尝试将公开放在前面……没有帮助).

任何帮助将非常感激.

UPDATE
我想到了.问题是我的项目和框架中有Message类,编译器不知道选择哪一个.在前面添加Modulename(Modulename.Message)修复了它. :d

解决方法 我遇到过同样的问题.定义协议的文件在框架和应用程序目标中都具有目标成员资格.我通过使定义协议的文件只在框架中具有目标成员资格然后添加导入< Frameworkname>来解决了这个问题.到需要使用协议的应用程序目标中的代码. 总结

以上是内存溢出为你收集整理的ios – 框架中的Swift协议全部内容,希望文章能够帮你解决ios – 框架中的Swift协议所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1002296.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存