SharedPreferences的工具类,使用起来方便、快捷
SharedPreferences的工具类,使用起来方便、快捷;
上代码: import android.content.Context;
import android.content.SharedPreferences; /**
* SharedPreferences的一个工具类,调用setData就能保存String, Integer, Boolean, Float, Long类型的参数
* 同样调用getData就能获取到保存在手机里面的数据
*
* @author smiling
* @date 2016/10
*/
public class SharedPreferencesUtils {
/**
* 保存在手机里面的文件名
*/
private static final String FILE_NAME = "share_data"; /**
* 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法
*
* @param context
* @param key
* @param object
*/
public static void setData(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 getData(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.setData(this, "String", "smiling");
SharedPreferencesUtils.setData(this, "int", 18);
SharedPreferencesUtils.setData(this, "boolean", true);
SharedPreferencesUtils.setData(this, "long", 100L);
SharedPreferencesUtils.setData(this, "float", 1.5f); SharedPreferencesUtils.getData(this, "String", ""); SharedPreferencesUtils.getParam(TimerActivity.this, "int", 0);
SharedPreferencesUtils.getData(this, "boolean", false);
SharedPreferencesUtils.getData(this, "long", 0L);
SharedPreferencesUtils.getData(this, "float", 0.0f);
*/
}
SharedPreferences的工具类,使用起来方便、快捷的更多相关文章
- Android 分享一个SharedPreferences的工具类,方便保存数据
		我们平常保存一些数据,都会用到SharedPreferences,他是保存在手机里面的,具体路径是data/data/你的包名/shared_prefs/保存的文件名.xml, SharedPrefe ... 
- SharedPreferences的工具类
		import android.content.Context; import android.content.SharedPreferences; import android.content.Sha ... 
- 写了个SharedPreferences的工具类(带加密)
		/* * Copyright (C) 2014 Jason Fang ( ijasonfang@gmail.com ) * * Licensed under the Apache License, V ... 
- Android修改默认SharedPreferences文件的路径,SharedPreferences常用工具类
		import android.app.Activity; import android.content.Context; import android.content.ContextWrapper; ... 
- Android之SharedPreferences两个工具类
		相信Android的这个最简单的存储方式大家都很熟悉了,但是有一个小小技巧,也许你没有用过,今天就跟大家分享一下,我们可以把SharedPreferences封装在一个工具类中,当我们需要写数据和读数 ... 
- Android快捷便利但不常被使用的原生工具类
		Android快捷便利但不常被使用的原生工具类 Android SDK原生 API中,有一些常用的工具类,运用得当可以省事省力省时,何况还是Android官方提供的,现在收集整理一些出来.DateUt ... 
- Android 中替代 sharedpreferences 工具类的实现
		Android 中替代 sharedpreferences 工具类的实现 背景 想必大家一定用过 sharedpreferences 吧!就我个人而言,特别讨厌每次 put 完数据还要 commit. ... 
- Java中使用google.zxing快捷生成二维码(附工具类源码)
		移动互联网时代,基于手机端的各种活动扫码和收付款码层出不穷:那我们如何在Java中生成自己想要的二维码呢?下面就来讲讲在Java开发中使用 google.zxing 生成二维码. 一般情况下,Java ... 
- Android工具类整合
		Android-JSONUtil工具类 常用的Json工具类,包含Json转换成实体.实体转json字符串.list集合转换成json.数组转换成json public class JSONUtil ... 
随机推荐
- javascript获取地址栏参数/值
			//URL: http://www.example.com/?var1=val1&var2=val2=val3&test=3&test=43&aaa=#2 //wind ... 
- 解决 Ubuntu15.04 登陆界面无限循环 的问题
			本人新手,在学习linux 安装NVIDIA 驱动的时候出现了一个奇怪的问题:登陆界面输入正确的账户密码,短暂闪烁后又返回了登陆界面.经查阅多种资料,已解决此问题 以下内容来自:http://blog ... 
- iTunes 安装终极解决方案
			近日手贱升级了Itunes,升级过程即报失败,然后卸载所有相关东西,再重装,Itunes安装成功,但是报告无法使用iphone,经过几天摸索,发现是Apple Mobile Device Suppor ... 
- 一个jpa动态模糊查询的实现
			最近一直在是用spring data jpa,使用起来确实方便,如果是单表的操作基本上通过方法名都可以实现,下面是一个 Specification 实现动态模糊查询的例子这个查询是通过JpaSpeci ... 
- 《FPGA零基础入门到精通视频教程》-第001b讲软件的破解
			高清视频和配套讲义这里下载 http://www.fpgaw.com/thread-68128-1-1.html 优酷视频地址,不是很清楚 
- IOS笔记 1
			< 