【问题标题】:nsuserdefault not saving array - Swiftnsuserdefault 不保存数组 - Swift
【发布时间】:2014-10-07 14:15:42
【问题描述】:

我可以获取单个字符串以保存到 NSUserDefaults,但我不确定为什么它不会使用以下代码保存数组。我确信它很小,但可以使用指针。

//
//  ViewController.swift
//  DemoUserDefaults
//
//  Created by Chris Cantley on 10/7/14.
//  Copyright (c) 2014 Chris Cantley. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

var storeNames:[String] = []

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.


    storeNames.append("Billy")
    storeNames.append("Chris")

    // Shows the strings in the array.
    println(storeNames)


    // puts mutable into immutable object
    let holdNames = storeNames

    // "should" store the object into UserDefaults... but does not.
    NSUserDefaults.standardUserDefaults().setObject(holdNames, forKey: "storeNames")
    NSUserDefaults.standardUserDefaults().synchronize()


    // Displays all data in UserDefaults... array is missing.
    println(NSUserDefaults.standardUserDefaults().dictionaryRepresentation())


}

}

结果...

[Billy, Chris]
[NSLanguages: (
en
), AppleITunesStoreItemKinds: (
audiobook,
"tv-episode",
booklet,
software,
"software-update",
"itunes-u",
ringtone,
"tv-season",
movie,
mix,
newsstand,
song,
wemix,
tone,
artist,
"podcast-episode",
podcast,
document,
eBook,
album,
"music-video"
), AppleKeyboardsExpanded: 1, NSInterfaceStyle: macintosh, AppleKeyboards: (
"en_US@hw=US;sw=QWERTY",
"emoji@sw=Emoji",
"en_US@hw=US;sw=QWERTY"
), AppleLanguages: (
en
), names: Rob]

注意:“names:Rob”来自之前的单个字符串保存。

【问题讨论】:

  • 你的数组中除了“Billy”和“Chris”还有什么?因为他们在顶部。
  • 有两个 println() 语句。第一个确认数组中有数据。第二个输出 NSUserDefaults 显示未添加数组。

标签: ios arrays swift nsuserdefaults


【解决方案1】:

数字...我发布了一个问题,我花了几个小时试图自己回答,几分钟后我找到了解决方案。

无论如何,NSUserDefaults 似乎不喜欢“String”,但将其更改为“NSString”是可行的。

所以变化是……

var storeNames:[String] = []

var storeNames:[NSString] = []

【讨论】:

  • 这是个老问题,但你救了我的命。非常感谢你,伙计:)我做了很长时间没有答案的研究,这里的繁荣就是答案。你统治!但是为什么会这样你知道吗?
猜你喜欢
  • 2016-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-18
  • 2011-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多