赞
踩
简单的数据存储----SharePreferenced的使用
1.Preference一般用来存储应用程序的设置信息,比如应用程序的色彩,文字字体。获取Preference由两种方法
(1)调用Context对象的SharePreference方法获取SharePreference对象,需要传入SharePreference的名称和打开方式。名称是Preference文件的名称,如果没有该文件,就以该名称为名创建一个Preference文件。打开方式有:PRIVATE,MODE_WORLD_READABLE,MODE_WORLD_WRITEABLAE
(2)调用Activity对象的getPrefercence方法获取SharePreference对象,需要传入的参数和(1)是一样的
2.上面两种方法所产生的SharePreference有一点区别。就是(1)所产生的Preference允许与其他组件所共享,而(2)所产生的Preference只能在相应的Activity中使用。
3。SharePreferences有许多的get方法用于获取键所返回的值,如果需要对SharePreference进行修改,则必须通过SharePreferences对象的edit()方法产生一个SharePreferences.Editor对象,通过该对象对Preference中的内容进行修改。
4.代码:
该程序实现的是:第二次打开应用程序,可以看到第一次在EditText中输入的值
- package game.sharepreference;
-
- import android.app.Activity;
- import android.content.SharedPreferences;
- import android.os.Bundle;
- import android.view.Menu;
- import android.widget.EditText;
-
- public class MainActivity extends Activity {
- private EditText edit;
- SharedPreferences sp;
- public final String EDIT_TEXT_KEY="EDIT_TEXT";
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- edit=(EditText)findViewById(R.id.edit);
- //获取一个SharePreferences对象
- sp=getPreferences(MODE_PRIVATE);
- //获取EDIT_TEXT_KEY中的值
- String result=sp.getString("EDIT_TEXT_KEY", null);
- if(result!=null){
- edit.setText(result);
- }
-
- }
- public void onDestroy(){
- //获取一个Editor对象
- SharedPreferences.Editor edit=sp.edit();
- edit.putString("EDIT_TEXT_KEY", String.valueOf(this.edit.getText()));
- edit.commit();
- super.onDestroy();
- }
-
-
-
- @Override
- public 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;
- }
-
- }
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。