gpt4 book ai didi

ios - 如果 UserDefaults 为空,如何检查一次

转载 作者:可可西里 更新时间:2023-11-01 01:35:26 25 4
gpt4 key购买 nike

我的应用计算日期和 NSDate() 之间的天数。当我发布它时,用户只能保存一个日期、一个标题和一张背景图片。

现在我有一个 UICollectionView,可以选择保存多个日期,它会通过将日期、标题和图像字符串附加到它们各自的数组来创建一个单元格。

应用程序已经完全改变,所以我正在努力研究如何检查用户是否保存了日期,如果保存了,将该信息添加到数组中以创建一个单元格。

但是,我希望只检查一次 - 第一次从更新或全新安装打开应用程序时。

这是我的想法,顺便说一句,它不起作用。

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {

let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! MyCollectionViewCell

if userDefault.objectForKey("day") == nil {
} else {
// Add the first date created from previous version
let day = userDefault.objectForKey("day") as? String
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd MMMM yyyy hh:mm a"
let date = dateFormatter.dateFromString(day!)!
let date1 = dateFormatter.stringFromDate(date)
addDateToArray(date1)

// Add the since text
let text = userDefault.objectForKey("sinceText") as? String
addSinceLabelToArray(text!)

//Add the image background
let image = userDefault.objectForKey("khoury") as! String
addThemeToImagesArray(image)
}

上面的代码会返回 nil。我期待它创建第一个单元格,以便用户可以看到他们保存的日期。

最佳答案

您可以在 NSUserDefaults 中使用另一个 bool 值来检测第一次运行:

let defaults = NSUserDefaults.standardUserDefaults()

if (!defaults.boolForKey("migrated")) {
defaults.setBool(true, forKey: "migrated")
// ... anything else
}

关于ios - 如果 UserDefaults 为空,如何检查一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38340958/

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