gpt4 book ai didi

ios - 在 Swift 应用程序中访问 Objective-C sharedInstance

转载 作者:可可西里 更新时间:2023-11-01 02:26:02 25 4
gpt4 key购买 nike

我正在用 Swift 编写一个依赖于 Obj-C 库的应用程序,FRDStravaClient 需要是一个 sharedInstance。实例化 sharedInstance 并在我的整个应用程序中使用它的最佳方式是什么?

@implementation FRDStravaClient

+(FRDStravaClient *) sharedInstance
{
static dispatch_once_t once;
static id instance;
dispatch_once(&once, ^{
instance = [[self alloc] init];
});
return instance;
}

为了继续前进,我定义了一个结构,因此我有一个引用我的实例的全局变量。但是我读到的所有内容都在谈论全局变量是多么令人厌恶

struct EvilGlobalVars {
static var stravaClient = FRDStravaClient()
static var authToken = NSUserDefaults.standardUserDefaults().stringForKey("authToken")
}

最佳答案

如果您如上所述创建了一个 sharedInstance,您可以在 Swift 中以 FRDStravaClient.sharedInstance() 的形式访问它。您不需要全局结构。

关于ios - 在 Swift 应用程序中访问 Objective-C sharedInstance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28074702/

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