您的位置:首页 > Web前端

Preferences.java

2016-05-20 22:45 316 查看
import android.content.Context;
import android.content.SharedPreferences;

import java.util.Set;

public class Preferences {
private static final String PREFERENCES_MAIN = K.app.package_name + ".main";
private static Preferences singleton = null;

private SharedPreferences pref;
private SharedPreferences.Editor editor;

public Preferences (Context context, String prefName) {
pref = context.getSharedPreferences(prefName, Context.MODE_PRIVATE);
editor = pref.edit();
}
public Preferences (String prefName) {
this(App.getInstance(), prefName);
}

public static Preferences getInstance () {
if (singleton == null) {
singleton = new Preferences(PREFERENCES_MAIN);
}
return singleton;
}

public boolean contains (String key) { return pref.contains(key); }

public boolean get (String key, boolean def) { return pref.getBoolean(key, def); }
public int get (String key, int def) { return pref.getInt(key, def); }
public long get (String key, long def) { return pref.getLong(key, def); }
public float get (String key, float def) { return pref.getFloat(key, def); }
public Set<String> get (String key, Set<String> def) { return pref.getStringSet(key, def); }
public String get (String key) { return get(key, ""); }
public String get (String key, String def) { return pref.getString(key, def == null ? "" : def); }

public Preferences put (String key, boolean value) { getEditor().putBoolean(key, value); return this; }
public Preferences put (String key, int value) { getEditor().putInt(key, value); return this; }
public Preferences put (String key, long value) { getEditor().putLong(key, value); return this; }
public Preferences put (String key, float value) { getEditor().putFloat(key, value); return this; }
public Preferences put (String key, String value) { getEditor().putString(key, value == null ? "" : value); return this;  }
public Preferences put (String key, Set<String> value) { getEditor().putStringSet(key, value); return this; }

public Preferences remove (String key) { editor.remove(key); return this; }
public Preferences clear () { editor.clear(); return this; }

public Preferences commit () {
//        if (editor != null) {
//            editor.commit();
//            editor = null;
//        }
editor.commit();
return this;
}

private SharedPreferences.Editor getEditor () {
if (editor == null) {
editor = pref.edit();
}
return editor;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: