swift - 如何将 Enum Case 值保存到 UserDefaults 以供进一步使用

标签 swift enums

如何将枚举大小写的值保存到 UserDefaults?我试过但没有运气。我检查了多个站点,包括这个站点,但没有运气,它们都在 Swift 2 或 Objective-c 中,我根本无法翻译。

最佳答案

使用符合属性列表的原始值创建枚举,例如 Int

enum ExampleEnum : Int {
    case default1
    case default2
    case default3   
}

隐式地第一种情况是 0,第二种情况是 1 等等。

现在您可以将(原始)值保存在 UserDefaults

UserDefaults.standard.set(currentDefaultType.rawValue, forKey:"Foo")

然后读回去

currentDefaultType = ExampleEnum(rawValue: UserDefaults.standard.integer(forKey:"Foo"))!

关于swift - 如何将 Enum Case 值保存到 UserDefaults 以供进一步使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45441946/

相关文章:

ios - 打印导入的枚举案例给出枚举名称而不是案例名称

ios - 带 Collection View 的动态布局 iOS

c# - 如何从枚举中获取字符串值

ios - 在同一个标​​签栏项目上加载新的 viewController 不起作用

ios - 无法显示应用程序 bundleID 的自动强密码

C++/ENUM/类型名称/说明符

java - 当有很多子类时,代码是否优雅?

c# - protobuf-net 什么时候需要使用 ProtoEnum 属性?

ios - 使用 Swift 5 - PDFKit 在 iOS 中编辑和保存现有的 pdf 文档

ios - 在 Swift 中的某个时间后使用 sprite 工具包更改场景?