我需要将一个变量从AppDelegate传递到另一个类,这是我创建的用于保存项目的全局变量的类,我无法找到使其工作的方法。Swift将数据从appDelegate传递到另一个类
这是在AppDelegate中的代码:
func application(application: UIApplication!, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData!) {
println("Device's token is: \(deviceToken)")
//Global Variables Class Instance
let globals:Globals = Globals()
globals.setDeviceToken("test1") //method1 not working
globals.deviceToken = "test2" //method2 not working
}
这是我的Globals类:
public class Globals {
var deviceToken = String()
init() {
//nothing
}
func setDeviceToken(s:String){
deviceToken = s
}
func getDeviceToken() -> String {
return deviceToken
}
}
如果我尝试打印的价值,从项目的其他文件,我无法获得任何东西,只是一个空字符串。
class ViewController: UIViewController {
//Global Variables Class Instance
let globals:Globals = Globals()
override func viewDidLoad() {
println(globals.getDeviceToken()) //return empty string
println(globals.deviceToken) //return empty string
*** UPDATE: 对于那些谁否决了我的问题:非常感谢你。对不起,如果我不是Swift专家(尚未),并抱歉,如果我使用stackoverflow来问我不知道的东西!
应用程序委托中应该保存多少数据?没有! EVER!不要这样做。这不是应用程序代表的用途。 – Fogmeister 2014-11-03 14:38:42
有没有必要生气,我只是一个初学者,我正在努力学习。 @Fogmeister – MeV 2014-11-06 11:05:03