关于ListView和ViewPager的一个Bug

来源:互联网 发布:限制上网软件 编辑:程序博客网 时间:2024/05/31 13:17
1.在ListView的自定义适配器中,继承BaseAdapter,有getView
的方法,当在ListView中上下滑动时,原先可视的item被滚出屏幕变得不可视,而代表该行的java对象可以被新的可视行复用
            举例:
       如果列表在手机屏幕中一屏可见的行有7行,当第一行滑出屏幕时,底部新滑出来的第8行可以复用第1行的java对象(即通过item布局inflate出来的view),android已经把第一行的布局缓存起来,作为可以复用的rowview:
解决途径一:
使用集合——将要显示的数据循环装入集合,再在getView的方法中循环拿值。
2.ViewPager滑动切换碎片:
       一般情况下,ViewPagr中只缓存当前显示页面和当前显示页面的左右页面,共三个页面,其余界面则会进行销毁。再次打开则会成为一个新的页面。
            举例:
            我们的答题功能,往后面多翻几道题,再回到前面,则原来选择过的标记不会存在,是一个新的页面。
            解决途径一:
            设置ViewPager的缓存页面数。