-1

我有一个listView内容为随机生成的数字。如果其中的一项listView滚动出屏幕,然后又滚动回屏幕,则随机生成的数字会更改(它会生成一个新数字)。

有什么办法可以防止这种情况发生吗?

示例代码在这里

4

2 回答 2

1

这是因为每次您的项目离开屏幕并再次出现在前面时,它都会调用 getview() 方法。为了解决这个问题,您可以将所有随机生成的数字存储在一个数组中,并使用它来显示项目。或者我认为使用视图持有者类(我没有尝试)。

于 2013-01-16T05:38:10.320 回答
1

只需尝试此代码用于 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
于 2013-01-16T05:43:54.800 回答