我有一个listView
内容为随机生成的数字。如果其中的一项listView
滚动出屏幕,然后又滚动回屏幕,则随机生成的数字会更改(它会生成一个新数字)。
有什么办法可以防止这种情况发生吗?
示例代码在这里
这是因为每次您的项目离开屏幕并再次出现在前面时,它都会调用 getview() 方法。为了解决这个问题,您可以将所有随机生成的数字存储在一个数组中,并使用它来显示项目。或者我认为使用视图持有者类(我没有尝试)。
只需尝试此代码用于 listview 实现侦听器和/或每次向上和/或向下滚动时调用的 getview() 方法,
mListView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// write down your code here
// i think notifyDataSetChanged() this method calling whatever u require.
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
// write down your code here
}
}); // mListView.setOnScrollListener close