gpt4 book ai didi

ios - 如何将主应用程序类传递给框架

转载 作者:行者123 更新时间:2023-11-28 11:27:24 24 4
gpt4 key购买 nike

我最近将框架添加到我的项目中,它工作正常,但是只有我的应用程序中存在我需要传递给框架的实现。我不确定这是否可行,如果可能的话,我想就如何实现这一目标提出建议。

预期的结果是将主应用程序类的实例获取到框架,这样我就可以在框架中使用主应用程序中的功能。

Scuedo 代码:

在框架中创建一个协议(protocol):

public protocol FrameworkBridge: class {
func tapOnClaimToken()
}

在主应用程序中创建一个确认框架协议(protocol)的类:

 class FrameworkBridgeImplementation: FrameworkBridge {
func tapOnClaimToken() {
// call some code which only exists in the main app
}
}

框架中的另一个类:

 class  AnotherClassIntheFramework {

var frameworkBridge: FrameworkBridge?

func performAction {
frameworkBridge.tapOnClaimToken()
}
}

最佳答案

要将对象传递给框架,框架通常应该定义一些它期望的协议(protocol)。然后使您的主要应用程序类型符合它,并将其传递给框架。

如果所讨论的实现只是一个函数,那么将函数本身作为参数传递通常更容易也更好。

这种模式很常见;这正是您能够将自定义 UITableViewDelegate 实现传递给 UIKit 并允许 UIKit 调用您的方法的方式。

关于ios - 如何将主应用程序类传递给框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57793076/

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