Android数据存储SharedPreference用法简单示例

来源:互联网 发布:欧姆龙plc编程软件 编辑:程序博客网 时间:2024/06/05 10:26

//对应的布局文件就是两个button,一个是点击后将数据存储到sharedpreference,一个是点击后从sharedpreference读取数据

import android.os.Bundle;import android.app.Activity;import android.content.SharedPreferences;import android.util.Log;import android.view.Menu;import android.view.View;import android.widget.Button;import android.view.View.OnClickListener;public class MainActivity extends Activity {private Button saveData;private Button restoreData;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);saveData = (Button)findViewById(R.id.save_data);restoreData = (Button)findViewById(R.id.restore_data);saveData.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){/*getSharedPreferences()方法此方法接收两个参数,第一个参数用于指定 SharedPreferences 文件的名称,如果指定的文件不存在则会创建一个,SharedPreferences 文件都是存放在/data/data/<packagename>/shared_prefs/目录下的。第二个参数用于指定操作模式,主要有两种模式可以选择,MODE_PRIVATE 和 MODE_MULTI_PROCESS。MODE_PRIVATE 仍然是默认的操作模式,和直接传入 0 效果是相同的,表示只有当前的应用程序才可以对这个SharedPreferences文件进行读写。 MODE_MULTI_PROCESS 则一般是用于会有多个进程中对同一个 SharedPreferences 文件进行读写的情况。*///调用 SharedPreferences 对象的 edit()方法来获取一个 SharedPreferences.Editor 对象SharedPreferences.Editor editor = getSharedPreferences("data", MODE_PRIVATE).edit();/*向 SharedPreferences.Editor 对象中添加数据,比如添加一个布尔型数据就使用putBoolean 方法,添加一个字符串则使用 putString()方法,以此类推。*/editor.putString("name", "Derek");editor.putInt("age", 25);editor.putBoolean("married", false);editor.commit();//调用 commit()方法将添加的数据提交}});restoreData.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubSharedPreferences pref = getSharedPreferences("data", MODE_PRIVATE);String name = pref.getString("name","");int age = pref.getInt("age",0);boolean married = pref.getBoolean("married",false);String test = pref.getString("test","test");Log.d("MainActivity","name is " + name);Log.d("MainActivity","age is " + age);Log.d("MainActivity","marride is " + married);Log.d("MainActivity","test " + test);}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}


0 0
原创粉丝点击