swift - 如何保存标签内容
问题描述
在我的 TodoList 中,我有一个标签,当在 Todo 中添加某些内容时,会显示当天的日期。
我怎样才能保存它?因为当我打开我的应用程序时,我总是知道打开它的日期和时间。
这是带有日期的标签的代码:
class TableViewCell: UITableViewCell {
@IBOutlet weak var Data: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
Data.text = String(describing: DateFormatter())
UserDefaults.standard.string(forKey: "Data")
let dataFormatter = DateFormatter()
dataFormatter.dateFormat = "dd/MM/yyyy H:mm a"
Data.text = dataFormatter.string(from: .init())
}
}
解决方案
将代码setSelected
移到awakeFromNib
我也希望这UserDefaults.standard.string(forKey: "Data")
能返回一个值,所以 someWhere 你应该有UserDefaults.standard.set(value:"----Any value", forKey: "Data")
guard let res = UserDefaults.standard.object(forKey: "Data") as? Date else { return }
let dataFormatter = DateFormatter()
dataFormatter.dateFormat = "dd/MM/yyyy H:mm a"
Data.text = dataFormatter.string(from:res)
对于塞特
UserDefaults.standard.set(Date(), forKey: "Data")
@IBOutlet weak var Data: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
UserDefaults.standard.set(Date(), forKey: "Data") // this line need to be placed where you need to store the date
guard let storedDate = UserDefaults.standard.object(forKey: "Data") as? Date else { return } // here you read the stored date
let dataFormatter = DateFormatter()
dataFormatter.dateFormat = "dd/MM/yy H:mm a"
Data.text = dataFormatter.string(from:storedDate)
}
推荐阅读
- sql - 如果缺少某个日期,则结转一行 | 大查询
- python - 如何从字典键中的一个值中获取整个列表?
- python - Python 预定脚本到 docker 容器
- entity-framework-core - 在 EF 查询中使用整数列表 - 以可翻译的形式重写查询,或切换到客户端评估
- xquery - 查询没有显示书籍的页面或标题
- java - 如何在项目可见 2-3 秒时增加 Recyclerview 项目的视图?
- javascript - [Object, Object] 错误 JavaScript 是什么意思
- c - feof(file) 返回错误值
- javascript - 如何限制 D3 条形图中的最大宽度
- git - 不小心从另一个文件夹推送到github