Guest User

Untitled

a guest
Feb 21st, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. interface SharedPreferencesProvider {
  2. val prefs: SharedPreferences
  3. }
  4.  
  5. class OptionalStringPrefDelegate(
  6. private val key: String,
  7. private val defaultValue: String? = null) : ReadWriteProperty<SharedPreferencesProvider, String?> {
  8.  
  9. override fun getValue(thisRef: SharedPreferencesProvider, property: KProperty<*>): String? =
  10. thisRef.prefs.getString(key, defaultValue)
  11.  
  12. override fun setValue(thisRef: SharedPreferencesProvider, property: KProperty<*>, value: String?) {
  13. thisRef.prefs.edit { putString(key, value) }
  14. }
  15. }
Add Comment
Please, Sign In to add comment