SharedPreferences helper class

前端 未结 6 1062
日久生厌
日久生厌 2020-12-19 06:33

I am doing SharedPreferences helper class to make my code looks nice.

public class SharedPreferencesHelper {
    Context context;

    public SharedPreferen         


        
6条回答
  •  既然无缘
    2020-12-19 07:31

    This works for me:

    object SharedPreferenceHelper {
        private val PREF_FILE = "SharedPreference"
    
        enum class StringValues(val defValue: String) {
            Test1("");
    
            fun set(context: Context, value: String) {
                context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).edit().putString(name, value).apply()
            }
    
            fun get(context: Context): String? = context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).getString(name, defValue)
        }
    
        enum class IntValues(val defValue: Int) {
            Test1(0);
    
            fun set(context: Context, value: Int) {
                context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).edit().putInt(name, value).apply()
            }
    
            fun get(context: Context): Int = context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).getInt(name, defValue)
        }
    
        enum class LongValues(val defValue: Long) {
            Test1(0);
    
            fun set(context: Context, value: Long) {
                context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).edit().putLong(name, value).apply()
            }
    
            fun get(context: Context): Long = context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).getLong(name, defValue)
        }
    
        enum class FloatValues(val defValue: Float) {
            Test1(0f);
    
            fun set(context: Context, value: Float) {
                context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).edit().putFloat(name, value).apply()
            }
    
            fun get(context: Context): Float = context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).getFloat(name, defValue)
        }
    
        enum class BooleanValues(val defValue: Boolean) {
            Test1(true);
    
            fun set(context: Context, value: Boolean) {
                context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).edit().putBoolean(name, value).apply()
            }
    
            fun get(context: Context): Boolean = context.getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE).getBoolean(name, defValue)
        }
    }
    

提交回复
热议问题