gpt4 book ai didi

android - 使用 SharedPreferences 从 ListView 保存数据

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:04:32 24 4
gpt4 key购买 nike

我试着寻找答案,但找不到我要找的东西:这是我第一次尝试保存数据/使用 SharedPreferences,所以我不太确定自己在做什么。重点是当用户在 EditText 中输入内容后,它会填充 ListView。但我也想要它,以便在执行此操作时,该应用程序还会保存该字符串,以便我可以在用户重新进入该应用程序时使用 LoadPreferences 来获取它。虽然这不会发生

代码:

public class TaskPage extends SherlockActivity {

EditText display;
ListView lv;
ArrayAdapter<String> adapter;
Button addButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

display = (EditText) findViewById(R.id.editText1);
lv = (ListView) findViewById(R.id.listView1);
addButton = (Button) findViewById(R.id.button1);


adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
lv.setAdapter(adapter);
LoadPreferences();


addButton.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String task = display.getText().toString();


adapter.add(task);
adapter.notifyDataSetChanged();
SavePreferences("LISTS", task);
}
});
}

protected void SavePreferences(String key, String value) {
// TODO Auto-generated method stub
SharedPreferences data = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = data.edit();
editor.putString(key, value);
editor.commit();


}

protected void LoadPreferences(){
SharedPreferences data = PreferenceManager.getDefaultSharedPreferences(this);
String dataSet = data.getString("LISTS", "None Available");

}

我很确定我做错了什么,但没有错误。所以当我运行该应用程序时,一切正常,除了没有保存任何东西(或者它可能只是不显示在 ListView 中)

那么我该如何解决这个问题呢?谢谢!

最佳答案

将 LoadPreferences() 方法更改为:

protected void LoadPreferences(){
SharedPreferences data = PreferenceManager.getDefaultSharedPreferences(this);
String dataSet = data.getString("LISTS", "None Available");

adapter.add(dataSet);
adapter.notifyDataSetChanged();
}

在您当前的代码中,您没有将 dataSet 添加到 ArrayAdapter

关于android - 使用 SharedPreferences 从 ListView 保存数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14175313/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com