2017-07-15 145 views
0

我想將此語法轉換爲swift 3,但由於我對swift非常陌生,無法理解語法。我需要創建一個Almofire管理器的單例類並創建它的單例實例。 這裏是我的舊代碼任何人都可以提供支持swift 3的代碼嗎?如何將Swift 2中的Singleton類轉換爲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() 
    } 
} 
+0

使用像這樣的共享實例 –

+0

這個*是*重複的,並且有> 80個「Swift 3 singleton」的問答。 –

回答

0

使用共享實例

final類SingletonClass {

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

// Shared Instance 

static let shared = SingletonClass() 

// Local Variable 

var yourArray : [String] = [] 

} 

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

相關問題