SwiftyUserDefaults 是对NSUserDefaults的一些封装和扩展,这个库这个只有一个类,操作起来十分简单方便:
这里只有两个步骤来使用SwiftyUserDefaults:
step 1:自定义你的键
extension DefaultsKeys{
/// 存储用户手机号码
static let userName = DefaultsKey<String?>("username")
/// 存储当前定位地区
static let regionName = DefaultsKey<String?>("regionName")
}
step 2:开始使用它
//为用户手机号码赋值
Defaults[.userName] = "KangKang"
//取值也是十分方便
let userName = Defaults[.userName]
//还有另外一种方法来存储你的键值,就是直接跳过步骤1不扩展DefaultsKeys也可以实现:
var user = Defaults["user"].string //指定键的类型
NSLog("user:\(user)") //因为一开始并没有对user赋值,从控制台可以看到输出结果:user:nil
var userValue = Defaults["userValue"].stringValue //取键的值
NSLog("userValue:\(userValue)") //因为一开始并没有对userValue设置值,从控制台可以看到输出结果:userValue:
// 直接给键赋值
Defaults["users"] = "KangKang"
var getusersValue = Defaults["users"].stringValue
NSLog("getusersValue:\(getusersValue)")//getusersValue:KangKang
//此处若是改成 var getusersValue = Defaults["users"].string //便会输出getusersValue:Optional("KangKang")
//hasKey判断是否存在该key,返回布尔值
if Defaults.hasKey("users"){
NSLog("users 存在")
}else{
NSLog("users 不存在")
}
//移除指定的key
这是我对这个库的一些基本了解,若是出现了错误,望及时指出。你们要是想要了解更多,可以去github看看: https://github.com/radex/SwiftyUserDefaults