【问题标题】:How refresh a listView inside SherlockFragment?如何刷新 SherlockFragment 中的 listView?
【发布时间】:2013-09-03 22:23:09
【问题描述】:

我在 SherlockFragment 中有一个 listView,但是当我对 Adapter 进行任何更改时,我无法更新屏幕上的 listView。我试过:adapter.notifyDataSetChanged(),但没有成功。谢谢。

【问题讨论】:

标签: android listview android-listview android-fragments


【解决方案1】:

您应该在调用 notifyDatasetChanged() 之前更新传递给适配器的底层数据集;

EG:

对于 ListActivity 中的 ArrayAdapter (“arraylist”是您用来支持 ArrayAdapter 的 ArrayList)

arraylist.add(data);
arrayadapter = this.getListAdapter();
arrayadapter.notifyDatasetChanged();

【讨论】:

    【解决方案2】:

    就个人而言,每次用户喜欢按下刷新按钮时,我都会重新填充 listView,再次初始化 Cursor

    像这样:调用这个函数...

    public void repopulateListView(){
    
    cursor = dbHelper.fetchAll();
            columns = new String[] {                        
                    DBAdapter.KEY_NAME,
                    DBAdapter.KEY_DATE,
                    DBAdapter.KEY_VOTE,
                    DBAdapter.KEY_CREDIT
            };
            to = new int[] {
                    R.id.one,
                    R.id.two,
                    R.id.three,
                    R.id.four
            };
    
            dataAdapter = new SimpleCursorAdapter(
                    getActivity(), R.layout.YOUR_ID,
                    cursor,
                    columns,
                    to,
                    0)
            {
                @Override
                public View getView(int position, View convertView, ViewGroup parent)
                {
                    final View row = super.getView(position, convertView, parent);
    
                }
            }
            }
    

    ...来自RefreshonClick:

     @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.refresh:{
                repopulateListView();
                break;
            }
        }
     }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-04
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      • 2017-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多