swift 可编码+ UserDefaults

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift 可编码+ UserDefaults相关的知识,希望对你有一定的参考价值。

import Foundation

extension UserDefaults {
    
    func set<T>(_ object: T, forKey key: String) where T: Codable {
        let encoder = JSONEncoder()
        let data = try? encoder.encode(object)
        set(data as Any, forKey: key)
    }
    
    func value<T>(type: T.Type, forKey key: String) -> T? where T: Codable {
        guard let data = data(forKey: key) else {
            return nil
        }
        
        let decoder = JSONDecoder()
        
        return try? decoder.decode(type, from: data)
    }
}

以上是关于swift 可编码+ UserDefaults的主要内容,如果未能解决你的问题,请参考以下文章