androidpreference
⑴ 如何在android中利用shared preferences存储和读取数据
1、任务目标
(1)掌握Android中SharedPreferences的使用方法。
2、任务陈述
(1)运行后,显示如下界面,可以写入和读取SharedPreferences中的数据:
3、任务实施及所涉及知识技能讲解
第一步:新建一个Android工程,命名为SharedPreferencesWrite。
第二步:在layout下添加一个使用线性布局的布局文件,命名为:main.xml。
布局文件源代码:
http://www.worlc.com/blog2012.aspx?bid=19403636
第三步:在CopySharedPreferencesTest.java下声明如下变量,并导入导入相关包(如何使用SharedPreferences存储和读取数据):
[java] view plain
SharedPreferences preferences;
Editor editor;
第四步:在onCreate方法中修改如下代码:
[java] view plain
setContentView(R.layout.main);
第五步:在onCreate方法中实例化前面声明的两个对象,代码如下:
[java] view plain
preferences = getSharedPreferences("crazyit", MODE_WORLD_READABLE);
editor = preferences.edit();
第六步:在onCreate方法中获取两个按钮,代码如下:
[java] view plain
Button read = (Button) findViewById(R.id.read);
Button write = (Button) findViewById(R.id.write);
第七步:在onCreate方法中为两个按钮添加监听器,代码如下:
[java] view plain
write.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 "
+ "hh:mm:ss");
// 存入当前时间
editor.putString("time", sdf.format(new Date()));
// 存入一个随机数
editor.putInt("random", (int) (Math.random() * 100));
// 提交所有存入的数据
editor.commit();
}
});
read.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
//读取字符串数据
String time = preferences.getString("time", null);
//读取int类型的数据
int randNum = preferences.getInt("random", 0);
String result = time == null ? "您暂时还未写入数据": "写入时间为:" + time + "\n上次生成的随机数为:" + randNum;
//使用Toast提示信息
Toast.makeText(SharedPreferencesTest.this ,
result , 5000).show();
}
});
第七步:点击运行程序,程序源代码如下:http://www.worlc.com/blog2012.aspx?bid=19403601
课堂练习:创建一个记录应用程序使用次数的程序,当用户第一次启动应用程序时,系统创建SharedPrefererences,来记录使用次数。用户以后启动应用程序时,系统先读取SharedPrefererences中记录的使用次数,然后将使用次数加1。
程序源代码如下:
http://www.worlc.com/blog2012.aspx?bid=19403695
⑵ Android中如何设置SharedPreference文件名称
获取SharedPreference对象函数如下:
public abstract SharedPreferences getSharedPreferences (String name, int mode);
其中name代表名称,mode代表文档的操作权限模式(私有,可读,可写)。因此只要在获取时设置name即可。
(2)androidpreference扩展阅读
1、数据读取:
通过SharedPreferences对象的键key可以获取到对应key的键值。对于不同类型的键值有不同的函数:
getBoolean,getInt,getFloat,getLong.
public abstract String getString (String key, String defValue);
2、数据存入:
数据的存入是通过SharedPreferences对象的编辑器对象Editor来实现的。通过编辑器函数设置键值,然后调用commit()提交设置,写入xml文件。
public abstract SharedPreferences.Editor edit ();
public abstract SharedPreferences.Editor putString (String key, String value);
public abstract boolean commit ();