2015-11-16 55 views
0

如何在Swift的幾個類之間傳遞NSUserDefault的狀態? 在這種情況下,我想通過一個TableViewController(其中您更改交換機上的狀態)和一個初始VC之間傳遞此狀態。 這裏是一個小模型,以瞭解... enter image description here使用NSUserDefaults在ViewController和TableVC之間傳遞數據(Swift)

我用它來與開關設定的狀態:

@IBAction func changeTouchIDState(sender: AnyObject) { 

    if TouchIDSwitch.on { 

     NSUserDefaults.standardUserDefaults().setBool(true, forKey: "State") 

    } else { 

     NSUserDefaults.standardUserDefaults().setBool(false, forKey: "State") 

    } 
} 

如果狀態= true,則初始VC應該問的認證。

謝謝!

回答

1

你的問題需要更多的解釋,我不明白你爲什麼要傳遞價值,因爲你已經存儲在NSUserDefaults,你可以在你的應用程序的任何class訪問。

按我理解您的問題,我的建議解決方案:

正如你已經在存儲NSUserDefaults的國家,所以如果它的真實呈現初始VC檢查NSUserDefaults.standardUserDefaults().boolForKey("State")之前,請驗證否則不會。

+0

非常感謝您!我不知道NSUserDefault在所有類中都是活動的...... – dev

0

設置布爾後,您應該同步:

NSUserDefaults.standardUserDefaults().synchronize() 

然後,您可以訪問該值:

func boolForKey(_ defaultName: String) -> Bool 
+0

不,不需要調用「同步」。您可以在不調用「synchronize」的情況下訪問該值。 – rmaddy

相關問題