使用Swift Singleton

Ale*_*hen 2 singleton shared swift

我有以下单例课程:

class Singleton {
    static let sharedInstance = Singleton()
}
Run Code Online (Sandbox Code Playgroud)

在网上几乎找不到关于如何使用Singleton模式的众多快速实现的信息。我以前在Objective-C的先前应用程序中使用过它,但对我来说似乎更直接了。

例如,如果我想创建可以在应用程序中的任何地方使用的自定义对象数组,那么我将如何声明它以及如何实现它。在我的Objective-C Singleton类中,我在类文件中创建全局变量,然后像这样实现它:

singletonClass *mySingleton = [singletonClass sharedsingletonClass];
mySingleton.whatever = "blaaaah"
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助!我也是这里的新手,也是Swift的新手。

And*_*ers 5

在Swift中,有关单例的信息很多。您是否曾以Google的专业知识接触过本文?http://krakendev.io/blog/the-right-way-to-write-a-singleton

但是要回答您的问题,您只需定义您想要正常使用的任何内容。

class Singleton {
    static let sharedInstance = Singleton() // this makes singletons easy in Swift
    var stringArray = [String]()

}

let sharedSingleton = Singleton.sharedInstance

sharedSingleton.stringArray.append("blaaaah") // ["blaaaah"]

let anotherReferenceToSharedSingleton = Singleton.sharedInstance

print(anotherReferenceToSharedSingleton.stringArray) // "["blaaaah"]\n"
Run Code Online (Sandbox Code Playgroud)