自定义SharedPreferences的工具类,方便保存数据
2017-08-18 12:46
375 查看
我们平常保存一些数据,都会用到SharedPreferences,他是保存在手机里面的,具体路径是data/data/你的包名/shared_prefs/保存的文件名.xml, SharedPreferences的使用也很简单,我自己就写了一个SharedPreferences的工具类,然后就保存在这里,等自己以后需要保存数据直接从这里copy代码
工具类如下
使用也很简单,保存数据
获取数据
工具类如下
/** * SharedPreferences的一个工具类,调用setParam就能保存String, Integer, Boolean, Float, Long类型的参数 * 同样调用getParam就能获取到保存在手机里面的数据 * @author xiaanming * */ public class SharedPreferencesUtils { /** * 保存在手机里面的文件名 */ private static final String FILE_NAME = "share_date"; /** * 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法 * @param context * @param key * @param object */ public static void setParam(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("Integer".equals(type)){ editor.putInt(key, (Integer)object); } else if("Boolean".equals(type)){ editor.putBoolean(key, (Boolean)object); } else if("Float".equals(type)){ editor.putFloat(key, (Float)object); } else if("Long".equals(type)){ editor.putLong(key, (Long)object); } editor.commit(); } /** * 得到保存数据的方法,我们根据默认值得到保存的数据的具体类型,然后调用相对于的方法获取值 * @param context * @param key * @param defaultObject * @return */ public static Object getParam(Context context , String key, Object defaultObject){ String type = defaultObject.getClass().getSimpleName(); SharedPreferences sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); if("String".equals(type)){ return sp.getString(key, (String)defaultObject); } else if("Integer".equals(type)){ return sp.getInt(key, (Integer)defaultObject); } else if("Boolean".equals(type)){ return sp.getBoolean(key, (Boolean)defaultObject); } else if("Float".equals(type)){ return sp.getFloat(key, (Float)defaultObject); } else if("Long".equals(type)){ return sp.getLong(key, (Long)defaultObject); } return null; } }
使用也很简单,保存数据
SharedPreferencesUtils.setParam(this, "String", "xiaanming"); SharedPreferencesUtils.setParam(this, "int", 10); SharedPreferencesUtils.setParam(this, "boolean", true); SharedPreferencesUtils.setParam(this, "long", 100L); SharedPreferencesUtils.setParam(this, "float", 1.1f);
获取数据
SharedPreferencesUtils.getParam(TimerActivity.this, "String", ""); SharedPreferencesUtils.getParam(TimerActivity.this, "int", 0); SharedPreferencesUtils.getParam(TimerActivity.this, "boolean", false); SharedPreferencesUtils.getParam(TimerActivity.this, "long", 0L); SharedPreferencesUtils.getParam(TimerActivity.this, "float", 0.0f);
相关文章推荐
- SharedPreference的工具类,方便保存和读取数据
- Android开发:一个SharedPreference的工具类,方便保存和读取数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- (五) Android 分享一个SharedPreferences的工具类,方便保存数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- 优化SharedPreferences的工具类,方便保存数据
- Android 分享一个SharedPreferences的工具类,方便保存数据
- #脱离连接xcode记录自定义打印数据,方便分析
- Android开发-数据存储SharedPreferences工具类、Set<String>保存问题、源码分析
- jquery实现可拖动DIV自定义保存到数据的实例
- android中sharedPreference保存数据的工具类
- Android自定义照相机实现(拍照、保存到SD卡,利用Bundle在Acitivity交换数据)
- python3+PyQt5 使用自定义模型保存数据并通过不同视图形式展示数据
- Inventor文件中保存自定义数据 - 3
- iOS-保存照片或者视频到自定义相薄中以及读取数据
- c#(winform)中自定义ListItem类方便ComboBox和ListBox添加项完全解决(DropDownList 和Combox 数据绑定的常用方法) .
- 保存自定义类型数据到文件