使用SharedPreferences模拟存储安卓设置的参数
第一次设置的参数,存储在config.xml中再次打开时保持状态
![]()
public class MainActivity extends Activity {
private CheckBox cb;
private SeekBar sb ;
private SharedPreferences sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.linear);
cb = (CheckBox) findViewById(R.id.cb);
sb = (SeekBar) findViewById(R.id.sb);
sp = this.getSharedPreferences("config", 0);
final Editor edit = sp.edit();
load();
cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Toast.makeText(MainActivity.this, "状态:"+isChecked, 4).show();
edit.putBoolean("isChecked", isChecked);
edit.commit();
}
});
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
int progress = seekBar.getProgress();
edit.putInt("progress", progress);
edit.commit();
Toast.makeText(MainActivity.this, "音量:"+progress, 4).show();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub
}
});
}
private void load() {
boolean isChecked = sp.getBoolean("isChecked", false);
if (isChecked){
cb.setChecked(true);
}
int progress = sp.getInt("progress", 0);
sb.setProgress(progress);
}
}