Трюк использования #function
6 июня 2017, 18:27
UserDefaults
let isInstalledErlier = UserDefaults.standard.bool(forKey: "isInstalledErlier") ?? false if isInstalledErlier { UserDefaults.standard.set(true, forKey: "isInstalledErlier") }
Если создать расширение для UserDefaults
extension UserDefaults { var isInstalledErlier: Bool { get { return bool(forKey: #function) } set { set(newValue, forKey: #function) } } }
то использовать будет проще
if UserDefaults.standard.isInstalledErlier == false { // тут какой-то полезный код UserDefaults.standard.isInstalledErlier = true }
Пример
extension UserDefaults { var firstLaunch: Bool { get { return bool(forKey: #function) } set { set(newValue, forKey: #function) } } }
extension UserDefaults { var isActivated: Bool { get { return bool(forKey: #function) } set { set(newValue, forKey: #function) } } var appName: String { get { return string(forKey: #function)! } set { set(newValue, forKey: #function) } } }
UserDefaults.standard.appName = "Tinder"
Твитнуть
Поделиться
Поделиться
Популярное