在我们的移动端项目开发中我想SharedPreferences用的也是比较多的吧所以这时就必须要有一个公共的工具类,所以今天就记录一个超好用的SP工具类话不多说直接上代码
首先创建一个名为SharedPreferencesUtils的工具类
public class SharedPreferencesUtils {
private static final String FILE_NAME="share_data";
public static void setParem(Context context,String key,Object object){
String type = object.getClass().getSimpleName();
SharedPreferences sp = context.getSharedPreferences(FILE_NAME,Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
if ("String".equals(type)){
editor.putString(key,(String)object);
}else if ("Boolean".equals(type)){
editor.putBoolean(key,(Boolean)object);
}else if ("Integer".equals(type)){
editor.putInt(key,(Integer)object);
}else if ("Float".equals(type)){
editor.putFloat(key,(Float)object);
}else if ("Long".equals(type)){
editor.putLong(key,(Long)object);
}
editor.commit();
}
public static Object getParem(Context context,String key,Object defaultObject){
String type = defaultObject.getClass().getSimpleName();
SharedPreferences sp = context.getSharedPreferences(FILE_NAME,Context.MODE_PRIVATE);
if ("String".equals(type)){
sp.getString(key,(String)defaultObject);
}else if ("Boolean".equals(type)){
sp.getBoolean(key,(Boolean)defaultObject);
}else if ("Integer".equals(type)){
sp.getInt(key,(Integer)defaultObject);
}else if ("Float".equals(type)){
sp.getFloat(key,(Float)defaultObject);
}else if ("Long".equals(type)){
sp.getLong(key,(Long)defaultObject);
}
return null;
}
}
那么我们究竟要怎么用这个工具类呢很简单,当我们要向里面存储数据的时候我们可以这样用。例如我这里是在LoginActivity.class中调用的所有就可以这样存储
SharedPreferencesUtils.setParem(LoginActivity.this,"key值String类型","123")
SharedPreferencesUtils.setParem(LoginActivity.this,"key值int类型",123)
SharedPreferencesUtils.setParem(LoginActivity.this,"key值Float类型","123.00")
SharedPreferencesUtils.setParem(LoginActivity.this,"key值Long类型","1230000000000000000000")
SharedPreferencesUtils.setParem(LoginActivity.this,"key值Boolean类型",true)
上面说的是向里面存值那么下面就说说怎么取值
网友评论