【问题标题】:Android: How to set a default ListView with sharedpreferences?Android:如何使用 sharedpreferences 设置默认 ListView?
【发布时间】:2012-12-23 13:32:16
【问题描述】:

我想做的是:

当我的应用程序第一次加载时,我希望它与我的默认 ListView 一起加载,其中有一个名为“New Item”的项目,稍后如果对我的 ListView 进行更改,我想要一个按钮命名为“默认设置”,将 ListView 返回为“1 个名为“新项目”的项目,

据我所知,我需要为此使用共享首选项,但我不知道从哪里开始。

感谢您的帮助。

【问题讨论】:

标签: android listview android-activity sharedpreferences default


【解决方案1】:

您的问题非常含糊不清。您可能会使用 SharedPreferences,但它只是一种存储机制。

我不建议在列表中使用重置按钮,但如果你愿意,我会同意。

首先,您需要创建一个 ArrayAdapter 并在数据更改时从 SharedPreferences 加载它。有很多教程。

在您的 ListView 上使用 addHeaderView() 和 addFooterView() 来添加“+ New Item”行,否则它们将与您的适配器一起使用。基本上只是在添加新项目或删除列表时通知 ArrayAdapter。

如果您需要更多详细信息,请在 Google 上找到大量深入的教程:)

【讨论】:

    【解决方案2】:

    您明确要求的问题不需要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 方法中,您只需调用此revert 方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      • 2015-08-21
      • 1970-01-01
      • 2016-04-18
      相关资源
      最近更新 更多