gpt4 book ai didi

iOS 应用程序看不到来自框架的公共(public)协议(protocol)

转载 作者:搜寻专家 更新时间:2023-10-31 22:12:16 25 4
gpt4 key购买 nike

我创建了静态框架并将其添加到 iOS 应用程序中。在 Framework 中,我创建了新的公共(public)协议(protocol):

public protocol ProtocolName
{
func methodName1(arg1: Int)
}

我重建了框架,但我不能在我的应用程序中使用这个协议(protocol)。

import FrameworkName

class ClassName: ProtocolName
{
func methodName1(arg1: Int)
}

(类定义错误:使用未声明的类型“ProtocolName”)

应用程序会看到其他协议(protocol)、其他类和 View 。它还会看到我的框架发生了变化(我添加了一些测试打印和重建框架来检查应用程序是否使用新构建的版本并且它可以正常工作)。

带有协议(protocol)的文件在框架的目标成员中。我试图删除整个框架并再次链接它,关闭并重新打开 XCode,多次清理这两个项目,但没有任何效果。

我还尝试添加下一个协议(protocol) - 在应用程序中也无法识别(但其他较旧的协议(protocol)可以)。

我检查了应用程序中的框架定义(右键单击模块并跳转到定​​义)- 没有提及新协议(protocol)。

我猜框架元数据(类和方法定义)的生成有问题,但我找不到修复它的方法。

如有任何帮助或想法,我们将不胜感激。

最佳答案

好的,我想我可以把这个问题留给有同样问题的人(也许会节省 3-4 个小时)。

解决方案非常简单:删除项目和框架的派生数据(也许删除应用程序的派生数据就足够了,但我删除了两者所以我不知道)。

如何在 XCode 中实现:https://stackoverflow.com/a/39495772/5226328

关于iOS 应用程序看不到来自框架的公共(public)协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42204879/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com