AppDelegate의 변수를 프로젝트의 전역 변수를 포함하도록 만든 다른 클래스로 전달해야하며 작동하도록하는 방법을 찾을 수 없습니다.Swift 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
}
이 내 전역 클래스입니다 :
이
은 AppDelegate에있는 코드 내가 프로젝트의 다른 파일에서 값을 인쇄하려고하면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 : 대단히 감사합니다 : 내 질문을 부결 사람들에게 . 죄송합니다. 스위프트 (아직) 전문가가 아니고 미안 해요. stackoverflow를 사용하여 모르는 내용을 묻는다면 죄송합니다. 싱글로
let delegate = UIApplication.sharedApplication().delegate as AppDelegate
let deviceToken = delegate.deviceToken
봐 :
앱 대리인에 보유 할 데이터의 양은 얼마입니까? 없음! 이제까지! 하지 마. 그것은 애플 리케이션 위임을위한 것이 아닙니다. – Fogmeister
화를 낼 필요가 없습니다. 저는 초보자이며 배우려고합니다. @ Fogmeister – MeV