Last active
June 26, 2020 10:09
-
-
Save alizainprasla/d24dbeed1bfee118b06c5ea8579a562f to your computer and use it in GitHub Desktop.
User Default Helper
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// UserDefaultHelper.swift | |
// | |
// Created by Ali Zain on 12/03/2020. | |
// Copyright © 2020 Ali Zain. All rights reserved. | |
// | |
import Foundation | |
public enum UserDefaultType:String { | |
case autoPrint | |
case lineSpacing | |
case numberOfPage | |
} | |
final class UserDefaultHelper { | |
static func save<T>(value:T , key:UserDefaultType){ | |
UserDefaults.standard.set(value, forKey: key.rawValue) | |
UserDefaults.standard.synchronize() | |
} | |
static func get<T>(for type:T.Type,key:UserDefaultType) -> T? { | |
if let value = UserDefaults.standard.value(forKey: key.rawValue) as? T { | |
return value | |
} | |
return nil | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
How to use:
Get from user default
UserDefaultHelper.get(for: Float.self, key: .lineSpacing)
Save in user default
UserDefaultHelper.save(value: value, key: .lineSpacing)