【问题标题】:Custom Shared Preferences Android自定义共享首选项 Android
【发布时间】:2011-10-05 03:50:46
【问题描述】:

我已经在 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 数组)。问题是为此首选项更改的数据没有保留。当我进行更改时,我按下返回按钮,我返回值回到默认值。如何确保也保存此首选项?

非常感谢

【问题讨论】:

    标签: android sharedpreferences preference listpreference


    【解决方案1】:

    解决了我在代码中包含首选项而不设置其数据:

    String [] ofis ={"Venus", "Europa"}; 
    ListPreference lp=(ListPreference) getPreferenceManager().findPreference("oficina");  
    lp.setEntries(ofis); 
    lp.setEntryValues(ofis); 
    lp.setDefaultValue(ofis[1]); 
    

    现在可以正常使用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-07
      • 1970-01-01
      • 2015-09-10
      • 2012-09-20
      • 2012-09-03
      相关资源
      最近更新 更多