Как сохранить состояние флажка и настройки камеры после уничтожения активности?
Или другими словами, как сохранить параметры камеры в SharedPreferences?
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.menu_old);
SharedPreferences preferences =
getSharedPreferences("PREFS_NAME",MODE_WORLD_READABLE);
yourCheckBox = (CheckBox) findViewById( R.id.fonarb );
yourCheckBox.setChecked(preferences.getBoolean("lol",false));
yourCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton yourCheckBox,
boolean isChecked) {
if (isChecked){
Parameters params = camera.getParameters();
params.setColorEffect(Parameters.EFFECT_NEGATIVE);
camera.setParameters(params);
}
else {
Parameters params = camera.getParameters();
params.setColorEffect(Parameters.EFFECT_NONE);
camera.setParameters(params);
}
}
});
public void onStop(){
SharedPreferences settings = getSharedPreferences("PREFS_NAME", MODE_WORLD_READABLE);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("lol", true);
editor.commit();
super.onStop();
}
Сделал, как вы сказали, не хочет сохранять настройки!: (
SharedPreferences preferences = getSharedPreferences("qwe",MODE_PRIVATE);
yourCheckBox = (CheckBox) findViewById( R.id.fonarb );
yourCheckBox.setChecked(preferences.getBoolean("lol",false));
yourCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton yourCheckBox,
boolean isChecked) {
if (isChecked){
Parameters params = camera.getParameters();
params.setColorEffect(Parameters.EFFECT_NEGATIVE);
camera.setParameters(params);
}
else {
Parameters params = camera.getParameters();
params.setColorEffect(Parameters.EFFECT_NONE);
camera.setParameters(params);
}
}
});
protected void onPause()
{
SharedPreferences settings = getSharedPreferences("qwe",MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
yourCheckBox = (CheckBox) findViewById( R.id.fonarb );
editor.putBoolean("lol", yourCheckBox.isChecked());
editor.commit();
super.onPause();
}