列表视图中加载共享首选项

时间:2016-11-25 20:30:02

标签: java android listview

我的应用程序存在问题,我希望加载存储在共享首选项中的所有数据,以便在列表视图中显示它们。 我保存名字,我想在列表视图中显示所有名称。

代码:

//在共享首选项中保存名称

          SharedPreferences prefs = getSharedPreferences("Noms", MODE_PRIVATE);
                SharedPreferences.Editor editor = prefs.edit();
                editor.putString("nom", var);
                editor.commit();

//在列表视图中显示

    ListView lv=(ListView)findViewById(R.id.listview);

    SharedPreferences settings = getSharedPreferences("Noms", 0);
    //String var = settings.getString("bbb", "null");

    Map<String,?> keys = settings.getAll();
    final String []names=new String[]{};
    for(Map.Entry<String,?> entry : keys.entrySet()){

        //Log.d("map values",entry.getKey() + ": " + entry.getValue().toString());

        String d =entry.getValue().toString();


    }

感谢您的时间:)

1 个答案:

答案 0 :(得分:0)

将您的值保存到字符串列表中,然后:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
              android.R.layout.simple_list_item_1, android.R.id.text1, values);


// Assign adapter to ListView
listView.setAdapter(adapter); 

类似的东西:

Map<String,?> keys = settings.getAll();
List<String> values = new ArrayList<String>();
for(Map.Entry<String,?> entry : keys.entrySet()){
    values.add(entry.getValue().toString());
}