我尝试使用notifyDataSetChanged()刷新我的listview,但是这个标记为红色。我像使用扩展适配器一样使用ListView,因此notifyDataSetChaned应该可以正常工作,但不是。
下面是我的声明ListView和ArrayList。
SUM(...) SUM(...)
我以这种方式设置了我的列表:
ListView listview;
ArrayList<ListData> myList = new ArrayList<>();
我也使用setOnScrollListener,我希望我的listview在SROLL_STATE = 0时刷新;
listview = (ListView) findViewById(R.id.listView);
listview.setAdapter(new MyBaseAdapter(this, myList));
答案 0 :(得分:2)
notifyDataSetChanged()
是 BaseAdapter 类的一种方法, 不 ListView 类。因此,调用listView.notifyDatasSetChanged();
在逻辑上和语法上都是不正确的。
用
替换此行listView.getAdapter().notifyDataSetChanged();
一切顺利:)
答案 1 :(得分:2)
定义Adapter对象, MyBaseAdapter adapter = new MyBaseAdapter(this,myList); adapter.notifyDataSetChanged();