標籤:
SharePreferences儲存方式,只是輕量級資料存放區,xml格式的資料顯示方式。
簡單儲存步驟如下:
一:擷取SharePreferences對象
1.SharedPreferences pref = getSharedPreferences(檔案名稱,存取權限);
或者
2.SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
二:建立對象的方法執行個體
pref.Editor editor = pref.edit();
三:往檔案中添加資料
editor.putXxxx(key,value);
Xxxx代value的資料類型。
四:提交editor
editor.commit();
//獲得SharedPreferences對象 SharedPreferences spf=getPreferences(MODE_PRIVATE);//獲得SharedPreferences.Editor對象SharedPreferences.Editor edit=spf.edit();//通過Editor介面的putXxx方法儲存key-value對 其中Xxx表示不同的資料類型edit.putString("name","yang");//通過Editor介面的commit方法儲存key-valueedit.commit();
擷取儲存的值:
spf.getString("name","");
package com.example.sharedpreferencedemo1;import android.content.SharedPreferences;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.CheckBox;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends AppCompatActivity implements View.OnClickListener{// private TextView tv; private EditText user,pwd; private CheckBox SaveUser; private Button login; private SharedPreferences spf; private SharedPreferences.Editor editor; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); user= (EditText) findViewById(R.id.et_User); pwd= (EditText) findViewById(R.id.et_Pwd); SaveUser=(CheckBox) findViewById(R.id.cb_SaveUser); login=(Button) findViewById(R.id.btn_Login); login.setOnClickListener(this); spf=getSharedPreferences("myPref", MODE_PRIVATE); editor=spf.edit(); if(spf.getString("name","").equals("")){ SaveUser.setChecked(false); }else { SaveUser.setChecked(true); user.setText(spf.getString("name","")); }// tv=(TextView) findViewById(R.id.tv);//// //獲得SharedPreferences對象// SharedPreferences spf=getPreferences(MODE_PRIVATE);// //獲得SharedPreferences.Editor對象// SharedPreferences.Editor edit=spf.edit();// //通過Editor介面的putXxx方法儲存key-value對 其中Xxx表示不同的資料類型// edit.putString("name","yang");// //通過Editor介面的commit方法儲存key-value// edit.commit();// tv.setText(spf.getString("name","")); } @Override public void onClick(View v) { //擷取介面的使用者名稱和密碼,trim()方法去除輸入的空格 String name=user.getText().toString().trim(); String Pwd=pwd.getText().toString().trim(); switch (v.getId()){ case R.id.btn_Login: if(name.equals("yxch")&&Pwd.equals("123456")){ if(SaveUser.isChecked()){ editor.putString("name",name); editor.commit(); } else { editor.remove(name); editor.commit(); } Toast.makeText(this,"登入成功!",Toast.LENGTH_SHORT).show(); }else { Toast.makeText(this,"使用者名稱:yxch 密碼:123456",Toast.LENGTH_SHORT).show(); } break; } }}
Android學習總結——SharedPreferences