我想做的是:
当我的应用程序第一次加载时,我希望它加载我的默认 ListView,其中有一个名为“New Item”的项目,稍后如果将对我的 ListView 进行更改,我想要一个名为“Default”的按钮settings”,将 ListView 返回为“1 个名为“New Item”的项目,
据我所知,我需要为此使用共享首选项,但我不知道从哪里开始。
谢谢你的帮助。
我想做的是:
当我的应用程序第一次加载时,我希望它加载我的默认 ListView,其中有一个名为“New Item”的项目,稍后如果将对我的 ListView 进行更改,我想要一个名为“Default”的按钮settings”,将 ListView 返回为“1 个名为“New Item”的项目,
据我所知,我需要为此使用共享首选项,但我不知道从哪里开始。
谢谢你的帮助。
您明确要求的问题不需要SharedPreferences
,它需要的是 ListView 自定义中的方法Adapter
。
public class CustomAdapter extends BaseAdapter {
private ArrayList<String> content;
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView tv = (TextView) convertView.findViewById(R.id.textView1);
tv.setText(content.get(position));
return convertView;
}
private void revert() {
ArrayList<String> content = new ArrayList<String>();
content.add("New Item");
this.content = content;
notifyDataSetChanged();
}
然后在您的按钮onClick
方法中,您只需调用此还原方法。
你的问题很模糊。您可能会使用 SharedPreferences,但它只是一种存储机制。
我不建议在列表中使用重置按钮,但如果你愿意,我会同意的。
首先,您需要创建一个 ArrayAdapter 并在数据更改时从 SharedPreferences 加载它。有很多教程。
在您的 ListView 上,使用 addHeaderView() 和 addFooterView() 添加“+ New Item”行,否则它们将与您的适配器一起使用。基本上只是在添加新项目或删除列表时通知 ArrayAdapter。
如果您需要更多详细信息,如果您在谷歌上搜索,这里有很多深入的教程:)