如何将Singleton Class从swift 2转换为swift 3?

时间:2017-07-15 06:06:43

标签: ios swift swift3

我正在尝试将此语法转换为swift 3,但由于我对swift非常新,因此无法理解语法。我需要创建一个单独的Almofire管理器类并创建它的单例实例。 这是我的旧代码,任何人都可以建议支持swift 3的代码吗?

    class AlamofireManager: NSObject
{
    private static var __once: () = {
            Static.instance = AlamofireManager()
        }()
    var req:Request?

    var baseUrl:String!

    var user:String?
    var password:String?

    var manager:SessionManager!

    /*
    *Singleton method
    */
    class var sharedInstance: AlamofireManager {
        struct Static {
            static var onceToken: Int = 0
            static var instance: AlamofireManager? = nil
        }
        _ = AlamofireManager.__once
        return Static.instance!
    }



    override init() {
        self.manager = Alamofire.SessionManager()
    }
}

1 个答案:

答案 0 :(得分:0)

使用共享实例

final class SingletonClass {

// Can't init is singleton
private init() { }

//   Shared Instance

static let shared = SingletonClass()

//   Local Variable

var yourArray : [String] = []

}

初始化如下: - SingletonClass.sharedinstance.yourArray。 =初始化