注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

星期五

明天不上班

 
 
 

日志

 
 
关于我

一个特立独行的Java程序员,比较宅,上上网,写博客,听音乐,看电影。

网易考拉推荐

Android数据存储之SharedPreferences  

2011-11-23 22:02:25|  分类: Android |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
SharedPreferences是Android中存储简单数据的一个工具类。可以想象它是一个小小的cookie,它通过用键值对的方式把简单数据类型(boolean、int、float、long和String)存储在应用程序的私有目录下(data/data/包名 /shared_prefs/)自己定义的xml文件中。

实例:
main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPersonName" />

<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword" />


<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Save" />


<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Clear" />

</LinearLayout>

SharedPreferenceActivity.java

package com.platform;

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class SharedPreferenceActivity extends Activity {
/** Called when the activity is first created. */
private String SETTING = "datas";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//get SharedPreferences object
SharedPreferences setting = getSharedPreferences(SETTING, 0);
//get username and password's value (default value "")
String username = setting.getString("USERNAME", "");
String password = setting.getString("PASSWORD", "");
//get editText1 and editText2 object
final EditText editText1 = (EditText)findViewById(R.id.editText1);
final EditText editText2 = (EditText)findViewById(R.id.editText2);
editText1.setText(username);
editText2.setText(password);

//get button1
Button button1 =(Button)findViewById(R.id.button1);
button1.setText("Save");
//save datas
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences setting = getSharedPreferences(SETTING, 0);
setting.edit().putString("USERNAME", editText1.getText().toString())
.putString("PASSWORD", editText2.getText().toString()).commit();
}
});

//get button2
Button button2 =(Button)findViewById(R.id.button2);
button2.setText("Clear");
//clear datas (commit after clear )
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences setting = getSharedPreferences(SETTING, 0);
setting.edit().clear().commit();
}
});
}
}


运行结果:
Android数据存储之SharedPreferences - 星期五 - 星期五

Save 后 在adb shell 中查看/data/data/com.platform/shared_prefs/datas.xml
Android数据存储之SharedPreferences - 星期五 - 星期五
 

参考资料:
http://ronald9-qq-com.iteye.com/blog/967733
http://www.moandroid.com/?p=319
  评论这张
 
阅读(261)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017