Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android編程入門 >> 安卓數據儲存之SharedPreferences

安卓數據儲存之SharedPreferences

編輯:Android編程入門

Android數據儲存之SharedPreferences

Android中SharedPreferences通常與Editor連用

接口SharedPreferences常用方法:

boolean contains(String str):判斷SharedPreferences中是否包含key為str的數據;

abstract Map<String,?>getALL():獲取SharedPreferences中所有數據;

String getxxxx(String str,xxxx defvalue):獲取指定類型的key為str的值!如果沒有找到,則返回 defvalue

SharedPreferences 對象的獲取方法:

通過Context中的getSharedPreferences(String name,int mode);

1、第一個參數為SharedPreferences的名稱!

2、第二個參數有如下幾個值:

      (1)Context.MODE_PRIVATE   :指定SharedPreferences數據只能被本應用使用

  (2)Context.MODE_WORLD_READABLE:指定SharedPreferences數據可以被其他應用讀取,但是不能寫

  (3)Context.MODE_WORLD_WRITEABLE:指定SharedPreferences數據可以被其他應用程序讀寫

Editor 常用方法:

SharedPreferences.Editor  Clear(); 清空SharedPreferences中所有數據

SharedPreferences.Editor  putxxxx(String str,xxxx value) 向SharedPreferences中添加數據

SharedPreferences.Editor  remove(String str) 刪除SharedPreferences中指定key為str的數據

boolean commit(); 增刪改之後提交

獲取Editor對象:

SharedPreferences.edit();

代碼:

public class MainActivity extends Activity implements OnClickListener{
	private Button read,write;
	private SharedPreferences preferences;
	private SharedPreferences.Editor editor;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initView();
		setEvent();
	}

	private void setEvent() {
		write.setOnClickListener(this);	
		read.setOnClickListener(this);	
	}

	private void initView() {
		write =(Button) this.findViewById(R.id.write);
		read =(Button) this.findViewById(R.id.read);
		preferences = this.getSharedPreferences("MySharedPreferences",Context.MODE_PRIVATE);
		editor = preferences.edit();
	}

	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.read:
			//contains(Stirng str)方法:查找該sharedpreferences中是否包含key值為str的值!
			boolean i = preferences.contains("ddd");
			if(i){
				String str = preferences.getString("ddd", "0");
				//Toast.makeText(this,""+str+"", 0).show();
			}else{
				Toast.makeText(this,"沒找到該數據", 0).show();
			}
			Map<String, ?> map = preferences.getAll();
			for (Entry<String, ?> map1 : map.entrySet()) {
				Toast.makeText(this,"KEY="+map1.getKey()+"||||||VALUE="+map1.getValue(), 0).show();
			}
			break;
		case R.id.write:
			editor.putString("ddd",new Date().toString());
			editor.putBoolean("aa",false);
			editor.putFloat("ff", 13);
			editor.putInt("rr", 33232);
			editor.commit();
			break;
		default:
			break;
		}
	}
	
}

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved