从其他viewcontroller访问getter和setter

时间:2016-12-17 17:30:01

标签: swift getter-setter

在我的A班中,我有一个如下定义的变量:

var auth_token:String?
var _auth_token:String {get{return self.auth_token!} set{auth_token = newValue}

现在我想从其他viewcontroller类访问此auth_token。我怎样才能做到这一点。如果我创建一个新的类实例,它将按预期返回nil。

1 个答案:

答案 0 :(得分:0)

你可以使用

制作你的班级单身人士

导入基金会

class A {
    static var sharedInstance = A()
    var myVariable : String! = nil

    private init () {
        //no need for any implementation
        //empty init removes all possibility of duplicate instance of class A
    }

}

正如您所看到的,在A类中有一个名为sharedInstance的静态变量和一个名为myVariable的字符串变量。

将sharedInstance声明为static并提供私有init的空实现会使您的A类单例。

现在无论你设置myVariable的值,无论你的VC在哪里获得相同的价值:)

您可以使用

访问它
let test = A.sharedInstance.myVariable

希望有所帮助:)玩得开心