使用NSUserDefaults时出错

时间:2015-06-18 12:46:42

标签: swift nsuserdefaults

我几周来一直试图在一个视图控制器中保存一些值,然后使用NSUserDefaults方法在另一个视图控制器中访问它们。我正在使用此代码:

(保存):

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject("Coding Explorer", forKey: "userNameKey")
  
      
  • 最后一行产生“预期声明”错误
  •   

(获取值):

let defaults = NSUserDefaults.standardUserDefaults()
if let name = defaults.stringForKey("userNameKey")
{
    println(name)
}
  
      
  • 这些行中的第一行产生“错误重新声明'默认值'”
  •   
  • 第二行产生“预期声明”
  •   
  • 第三行产生“一条线上的连续声明必须由a分隔;”和“在其自身初始值内使用的变量”
  •   

请帮我解决这个问题我已经尝试了不同的代码来使用NSUserDefaults,我尝试在单独和相同的视图控制器上使用代码。

1 个答案:

答案 0 :(得分:2)

您可以尝试使用这种方式..

保存首先定义一个名为例如" firstName":

的字符串
var firstName : String = "Im Swift"
第一个ViewController中的viewDidLoad中的

if (NSUserDefaults.standardUserDefaults().stringForKey("firstName") == nil){
NSUserDefaults.standardUserDefaults().setObject(firstName, forKey: "firstName")
}

要检索价值: 在第二个ViewController的viewDidLoad中:

if (NSUserDefaults.standardUserDefaults().stringForKey("firstName") != nil){

var x = NSUserDefaults.standardUserDefaults().objectForKey("firstName") as! String

    println("\(x)");
}