https://github.com/divadretlaw/UserDefaults
🗂 UserDefaults extension framework
https://github.com/divadretlaw/UserDefaults
carthage framework ios macos swift tvos userdefaults watchos
Last synced: 3 months ago
JSON representation
🗂 UserDefaults extension framework
- Host: GitHub
- URL: https://github.com/divadretlaw/UserDefaults
- Owner: divadretlaw
- License: mit
- Archived: true
- Created: 2015-11-17T21:26:49.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-06-10T11:05:06.000Z (almost 7 years ago)
- Last Synced: 2024-10-23T22:18:58.609Z (7 months ago)
- Topics: carthage, framework, ios, macos, swift, tvos, userdefaults, watchos
- Language: Swift
- Homepage:
- Size: 430 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# UserDefaults [](https://github.com/Carthage/Carthage) [](https://swift.org) [](LICENSE)
[](https://github.com/divadretlaw/UserDefaults)
### Build Status
|iOS|macOS|watchOS|tvOS|
|:-:|:-:|:-:|:-:|
|[](https://travis-ci.org/divadretlaw/UserDefaults)|[](https://travis-ci.org/divadretlaw/UserDefaults)|[](https://travis-ci.org/divadretlaw/UserDefaults)|[](https://travis-ci.org/divadretlaw/UserDefaults)|## Usage
Define Static Keys for easy access to data stored in UserDefaults
```swift
extension DefaultsKeys {
static let key = DefaultsKey("key")
static let number = DefaultsKey("number")
static let condition = DefaultsKey("condition")
// eg. struct SomeCodable : Codeable { ... }
static let codeable = DefaultsKey("somecodeable")
}
```### Write to UserDefaults
Static keys
```swift
UserDefaults.standard[.key] = "Value"
UserDefaults.standard[.number] = -3.4
UserDefaults.standard[.condition] = true
UserDefaults.standard[.codeable] = SomeCodable()
```String Keys
```swift
UserDefaults.standard["key"] = "Value"
UserDefaults.standard["number"] = -3.4
UserDefaults.standard["condition"] = true
```### Read from UserDefaults
Static Keys
```swift
var string = UserDefaults.standard[.key]
// string = Optionalif UserDefaults.standard[.condition] {
// true
}let someCodable: SomeCodable? = UserDefaults.standard[.codeable]
// someCodable = Optional
```String Keys
```swift
let object = UserDefaults.standard["key"]
// object = Optionallet string = UserDefaults.standard.string("key")
// string = Optional
```### Alter UserDefaults
Static Keys
```swift
UserDefaults.standard[.key] += ". Other value."UserDefaults.standard[.number] *= 1.2
```String Keys
```swift
UserDefaults.standard["key"] = UserDefaults.standard.string(forKey: "key") ?? "" + ". Other value."UserDefaults.standard["number"] = UserDefaults.standard.double("number") * 1.2
```## Installation
UserDefaults is available through [Carthage](https://github.com/Carthage/Carthage). To install just write into your Cartfile:
```
github "divadretlaw/UserDefaults"
```## License
See [LICENSE](LICENSE)
Copyright © 2018 David Walter \(www.davidwalter.at)