相关疑难解决方法(0)

将Struct保存到UserDefaults

我有一个结构,我想保存到UserDefaults.这是我的结构

struct Song {
    var title: String
    var artist: String
}

var songs: [Song] = [
    Song(title: "Title 1", artist "Artist 1"),
    Song(title: "Title 2", artist "Artist 2"),
    Song(title: "Title 3", artist "Artist 3"),
]
Run Code Online (Sandbox Code Playgroud)

在另一个ViewController中,我有一个附加到这个结构的UIButton

@IBAction func likeButtonPressed(_ sender: Any) {   
   songs.append(Song(title: songs[thisSong].title, artist: songs[thisSong].artist))
}
Run Code Online (Sandbox Code Playgroud)

我想要它,以便每当用户也点击该按钮时,它会将结构保存到UserDefaults,这样每当用户退出应用程序然后打开它时,它就会被保存.我该怎么做?

struct nsuserdefaults ios swift

50
推荐指数
4
解决办法
2万
查看次数

如何在Swift 2.0中将struct保存到NSUserDefaults

我有一个名为struct的结构Jar,我想将它们的数组保存到NSUserDefaults.这是jar结构代码:

struct Jar {

    let name: String
    let amount: Int

    init(name: String, amount: Int){
        self.name = name
        self.amount = amount
    }
}
Run Code Online (Sandbox Code Playgroud)

我相信我需要将它转换为NSObject才能保存它.(因为您无法将结构直接保存到NSUserDefaults).我的问题是: 如何将结构数组转换为NSObject?以及如何将NSObject转换回结构数组.

nsuserdefaults ios swift2

1
推荐指数
1
解决办法
5574
查看次数

标签 统计

ios ×2

nsuserdefaults ×2

struct ×1

swift ×1

swift2 ×1