Я установил предпочтения в xml, и у меня есть следующее действие:
public class Preferencias extends PreferenceActivity {
//SharedPreferences prefs;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
setContentView(R.layout.preferences);
Button bt=(Button)findViewById(R.id.selectPic);
TextView tv=(TextView) findViewById(R.id.textView1);
String def=getResources().getString(R.string.noDefinido);
tv.setText(PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).getString("logo", def));
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setClassName(getApplicationContext(),
SDCardImagesActivity.class.getName());
startActivity(intent);
}
});
//habra que sacarlo de la red
String [] ofis ={"Venus", "Europa"};
ListPreference lp=new ListPreference(this);
lp.setValue("oficina");
lp.setEntries(ofis);
lp.setEntryValues(ofis);
lp.setTitle(R.string.oficina);
lp.setDefaultValue(ofis[1]);
getPreferenceScreen().addPreference(lp);
}
}
Он отлично работает с предпочтениями xml, но мне также нужно добавить предпочтение в коде, причина в том, чтопараметры этого ListPreference будут исходить из базы данных (здесь у меня есть массив String).Проблема в том, что данные, измененные для этого предпочтения, не сохранились.Когда я делаю изменения, я нажимаю кнопку возврата, я возвращаюсь, значение возвращается к значению по умолчанию.Как я могу убедиться, что это предпочтение тоже сохранено?
Большое спасибо