废话不多讲,直接入题:以下,SharedPreferences小马就简称SP了:
SP一般建议在全局文件中操作,即:在继承Application的扩展类中操作,这样做的原因是SP只是为了存储一些应用及游戏配置,并不能存储大量数据,而且操作次数也不会太过频繁,因此建议在全局中操作和使用哦:
先来看下效果图:主要看效果图下面的讲解,嘿嘿
![]()
![]()
![]()
将XML文件导出后的结果如下图:
![]()
- package com.mzh.www;
-
- import android.app.Activity;
- import android.content.Context;
- import android.content.Intent;
- import android.content.SharedPreferences;
- import android.os.Bundle;
- import android.preference.Preference;
- import android.preference.PreferenceActivity;
- import android.preference.PreferenceManager;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Toast;
-
-
-
-
-
-
-
-
-
-
- public class SharedPreferencesDemo extends Activity {
-
-
- private EditText XM ;
- private EditText NL ;
- private EditText SG ;
- private Button saveBtn ;
- private Button cancelBtn;
-
-
-
- private static final String PREFERENCES_NAME = "XiaoMa_Guo";
-
-
-
-
-
-
-
-
-
-
-
- private static final int PREFERENCES_MODE
- = Context.MODE_WORLD_READABLE
- +Context.MODE_WORLD_WRITEABLE;
-
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
-
-
- XM = (EditText)findViewById(R.id.XM);
- NL = (EditText)findViewById(R.id.NL);
- SG = (EditText)findViewById(R.id.SG);
-
-
- saveBtn = (Button)findViewById(R.id.Save);
- cancelBtn = (Button)findViewById(R.id.Cancel);
- saveBtn.setOnClickListener(listener);
- cancelBtn.setOnClickListener(listener);
- }
-
-
-
-
- private OnClickListener listener = new OnClickListener() {
-
- @Override
- public void onClick(View v) {
-
- switch (v.getId()) {
- case R.id.Save:
- saveSharedPreferences();
- break;
- case R.id.Cancel:
- finish();
- break;
-
- default:
- break;
- }
- }
-
-
-
-
-
- private void saveSharedPreferences() {
-
-
-
-
- SharedPreferences sharedPreferences =
- getSharedPreferences(PREFERENCES_NAME, PREFERENCES_MODE);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- SharedPreferences.Editor editor = sharedPreferences.edit();
- if(
- !"".equals(XM.getText().toString())
- &&!"".equals(NL.getText().toString())
- &&!"".equals(SG.getText().toString())
- ){
- editor.putString("Name", XM.getText().toString());
- editor.putInt("Age", Integer.parseInt(NL.getText().toString()));
- editor.putFloat("Height", Float.parseFloat(SG.getText().toString()));
- editor.commit();
- Toast.makeText(SharedPreferencesDemo.this, "数据保存成功!",
- Toast.LENGTH_LONG).show();
- Intent intent = new Intent(SharedPreferencesDemo.this,ShowPreferences.class);
- startActivity(intent);
- }else{
- Toast.makeText(SharedPreferencesDemo.this, "数据不完整,保存失败!", Toast.LENGTH_LONG).show();
- }
- }
-
- };
- }
最后,小马会把自己的DEMO上传到附件,供跟小马处于同一起跑线上的朋友们学习使用,但不要COPY哦,自己敲一遍就记得比较清楚啦,吼吼, 小马刚开始写文章,如果有错误的地方,请直接批评指出,批评就是对我最好的提高,最后,谢谢看文章的你给小马多提些建议,小马有错的地方肯定不含糊,绝对会改正,谢谢