gpt4 book ai didi

arrays - 快速将按钮数组保存到 NSUserDefaults

转载 作者:行者123 更新时间:2023-11-30 13:32:18 24 4
gpt4 key购买 nike

正如标题所说。这可能吗?这是我的代码:

离开 View 时...

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
defaults.setObject(buttonArray, forKey: "buttonArray")
defaults.synchronize()
}

进入时...

override func viewDidLoad() {
super.viewDidLoad()

if let isAppAlreadyLaunchedOnce = defaults.stringForKey("isAppAlreadyLaunchedOnce") {
print("View already launched")

let savedArray = defaults.arrayForKey("buttonArray")
buttonArray = savedArray as! [UIButton]
} else {
print("View launched first time")
buttonArray = (button1, button2, button3, button4)
}

//rest of code where button array gets changed
}

当调用prepareForSegue时,我收到错误SIGNAL SIGABRT

最佳答案

你不能这么做。用户默认值是一个属性列表,您只能在其中存储以下类型(数组和字典也只能包含这些类型):

– NSArray
– NSData
– NSDictionary
– NSNumber
– NSString`

您可以考虑将按钮编码到 NSData 中,但在我看来这是糟糕的设计。用户默认值应用于应用程序重新启动后应保留的用户首选项。重新创建这些按钮究竟需要哪些信息?它是否需要在应用程序被杀死后才起作用,还是只有当您重新进入此屏幕时才起作用?

关于arrays - 快速将按钮数组保存到 NSUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36442157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com