MFUserDefaults 1.1

MFUserDefaults 1.1

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最新版本2016年1月
SPM支持 SPM

yebw 维护。



  • 作者:yebw
  • yebw

简介

一个轻量级的工具包,用于保存应用程序或特定用户设置。

要求

  • iOS 8.0+
  • Xcode 7

集成

用法

1. 配置

如果您要保存特定用户的设置,则首先需要注册用户

MFUserDefaults.sharedInstance().register("John")

如果您仅使用此工具包保存与应用程序设置无关的设置(与用户系统中任何账户无关),则无需配置,但在此情况下,您始终应注意设置 isSharedDefault 参数为 true,否则您将得到一个意外的结果。

2. 设置器

保存与当前用户无关的值,例如,您可能希望记住应用程序安装的日期

MFUserDefaults.sharedInstance.setDate(NSDate(), forKey: "DateInstalled", isSharedDefault: true)

// or
MFUserDefaults.sharedInstance["DateInstalled", true] = NSDate()

isSharedDefault 是一个可选参数,默认值为 false。如上所述,如果您正在保存与用户无关的属性,则应显式将其设置为 true。

保存指定用户的姓名

// MFUserDefaults.sharedInstance.registerUser("john") should already invoked

MFUserDefault.sharedInstance.setString("John Snow", forKey: "name")

// Or
MFUserDefault.sharedInstance.setString("John Snow", forKey: "name", isSharedDefault: false)

// Or 
MFUserDefaults.sharedInstance["name", false] = "John Snow"

保存指定用户的年龄

MFUserDefaults.sharedInstance.setInteger(25, forKey: "age")

// Or
MFUserDefaults.sharedInstance.setInteger(25, forKey: "age", isSharedDefault: false)

// Or 
MFUserDefaults.sharedInstance["age", false] = 25

注意:与 NSUserDefaults 类似,MFUserDefaults 并不会立即将内存中的默认值写入磁盘,如果您想写入的话可以调用 synchronize 方法。synchronize 方法在合适的时间自动调用,使内存缓存与用户的 defaults.plist 文件保持同步。

3. 获取器

获取值的方式也非常直观

获取应用程序安装的日期

let date = MFUserDefaults.sharedInstance.dateForKey("DateInstalled", isSharedDefault: true)

\\ or
let date = MFUserDefaults.shareInstance["DateInstalled", true] as? NSDate

获取当前用户的姓名

let name = MFUserDefaults.shareInstance.stringForKey("name")

or 
let name = MFUserDefaults.shareInstance.stringForKey("name", isSharedDefault: false)

or
let name = MFUserDefaults.shareInstance["name", false] as? String

获取当前用户的年龄

let age = MFUserDefaults.shareInstance.integerForKey("age")

or 
let age = MFUserDefaults.shareInstance.integerForKey("age", isSharedDefault: false)

or
let age = MFUserDefaults.shareInstance["age", false] as? Int

4. 其他

  • resetUserDefaults: 重置默认值
  • registerDefaults: 初始化默认值
  • removeObjectForKey: 根据键移除值
  • synchronize: 立即将内存中的默认值写入磁盘

作者

yebw, [email protected]

许可证

MFUserDefaults 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。