我嘗試使用notifyDataSetChanged()刷新我的listview,但它被標記爲紅色。我使用像擴展適配器ListView,所以notifyDataSetChaned它應該工作,但否則。如何使用BaseAdapter刷新我的ListView
下面是我的聲明ListView和ArrayList。
ListView listview;
ArrayList<ListData> myList = new ArrayList<>();
設置我的列表中這樣說:
listview = (ListView) findViewById(R.id.listView);
listview.setAdapter(new MyBaseAdapter(this, myList));
我也setOnScrollListener使用,我想我的列表視圖它時刷新SROLL_STATE = 0;
listview.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
int position = listview.getFirstVisiblePosition();
SCROLL_STATE = position;
if (SCROLL_STATE == 0) {
listview.notifyDataSetChanged(); // Here is a problem, because it's not work
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
}
});
也許你應該檢查你的導入的包名是你的擴展列表視圖。 –