編輯:關於Android編程
除了SQLite數據庫外,SharedPreferences也是一種輕型的數據存儲方式,它的本質是基於XML文件存儲key-value鍵值對數據,通常用來存儲一些簡單的配置信息。其存儲位置在/data/data/< >/shared_prefs目錄下。SharedPreferences對象本身只能獲取數據而不支持存儲和修改,存儲修改是通過Editor對象實現。實現SharedPreferences存儲的步驟如下:
一、根據Context獲取SharedPreferences對象
二、利用edit()方法獲取Editor對象。
三、通過Editor對象存儲key-value鍵值對數據。
四、通過commit()方法提交數據。
下面是用SharedPreferences存儲數據的一個案例:
點擊開啟開啟WiFi,設置進度條,保存狀態,下次打開此程序,將顯示上次保存的狀態。
核心code如下:
package com.ghsy.demo; import android.os.Bundle; import android.app.Activity; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.view.Menu; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; public class MainActivity extends Activity { private CheckBox checkBox; private SeekBar seekBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); checkBox=(CheckBox) this.findViewById(R.id.checkBox1); seekBar=(SeekBar) this.findViewById(R.id.seekBar1); /*除了SQLite數據庫外,SharedPreferences也是一種輕型的數據存儲方式,它的本質是基於XML文件 *存儲key-value鍵值對數據,通常用來存儲一些簡單的配置信息。其存儲位置在/data/data/< >/sh *ared_prefs目錄下。SharedPreferences對象本身只能獲取數據而不支持存儲和修改,存儲修改是 *通過Editor對象實現。 */ //sharedPreferences存儲數據的步驟: //1.根據context獲取SharedPreferences對象 final SharedPreferences preferences=MainActivity.this.getSharedPreferences("setting",MODE_PRIVATE ); //點擊發生狀態改變的時候,調用相應的方法 checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener(){ @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { //2.通過SharedPreferences獲取editor對象(對數據存儲修改的對象) Editor editor=preferences.edit(); //3.通過editor對象存儲key-value鍵值對數據 editor.putBoolean("wifi", isChecked); //4.通過commit方法提交數據 editor.commit(); } }); //當點開當前頁面的時候,從preferences中獲取當前的的wifi開啟狀態 Boolean boolean1 = preferences.getBoolean("wifi", false); checkBox.setChecked(boolean1); //當seekbar在移動的時候對其做一個監聽 this.seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar seekBar) { // 進度條停止的時候 } @Override public void onStartTrackingTouch(SeekBar seekBar) { // 進度條開始移動 } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // 進度條運動後(在移動) Editor editor=preferences.edit(); editor.putInt("seek", progress); editor.commit(); } }); int progress=preferences.getInt("seek", 0); this.seekBar.setProgress(progress); } @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; } }
Android 4.0中添加了一個很有用的特性,那就是overView Screen功能,也就是最近任務預覽功能。這個功能提供了一個列表試圖,方便用戶簡單快捷地了解到最近
1. 功能介紹AndroidEventBus是一個Android平台的事件總線庫, 它簡化了Activity、Fragment、Service等組件或者對象之間的交互,很
Android Lint Android Lint是在ADT 16(和 Tools 16)引入的一個新工具,可以掃描Android 項目源碼中潛在的bug
本文將告訴你如何讓你的應用程序支持各種不同屏幕大小,主要通過以下幾種辦法:讓你的布局能充分的自適應屏幕 根據屏幕的配置來加載合適的UI布局 確保正確的布局應用在正確的設備