场景:Android ListView需要分页加载,每个item中会有图片,图片又是从网络下载的. 问题:在滑动加载下一页时,上一页的图片明明已经下载完成了,但是无法显示出来. Bug重现: 1,加载了第1页的数据,图片在后台下载(下载完成后更新ImageView),向下滑动ListView. 2,滑动到listview的最下面,请求第2页数据 3,第2页数据返回,调用adater.notifyDataSetChanged()刷新listview. 这时整个listview会重绘,系统调用ada…
1.mainActivity <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" andr…
public class MainActivity extends Activity { private ListView listView=null; //listview的数据填充器 private ArrayAdapter<String> adapter; //listview中数据的集合 private List<String> data; //下一页初始化为0 int nextpage = 0; //每一页记载多少数据 private int number=10; //最…
Listview分页加载数据的实现 public class MainActivity extends Activity { protected static final int SUCCESS_GET_DATA = 0; private ListView listview; private DataService service; private List<String> data;// 加载的总数据 private ArrayAdapter<String> adapter; p…
研究了几个小时终于实现了Android ListView 自动加载的效果. 说说我是怎样实现的.分享给大家. 1.给ListView增加一个FooterView,调用addFooterView(footer) 这个放方法. 2.给ListView设置OnScrollListener监听器. 3.实现OnScollListener的onScroll和onScrollStateChanged这两个方法. 4.然后判断是否满足条件.满足条件就自动加载. 下面结合代码来更容易理解. mListView.…
最近在做ListView分页显示,其中包括图片 和文字(先下载解析文字内容,再异步加载图片)发现每次点击下一页后,文字内容加载完毕,马上向下滑动,由于这时后台在用线程池异步下载图片,我每页有20条,也就是20张图片,会导致listview滑动卡顿! 这是用户不想看到的,我参考了网易新闻和电子市场等应用,发现它们都是只加载屏幕内的图片,不现实的不加载,于是我也仿照做了一个.我是菜鸟,我承认 呵呵,虽然不见得完全和他们的一样,但是确实解决了翻页时那一刻的卡顿现象. 因为未发现网上有相关文章,希望对朋…
写这篇文章并不是教大家怎么样用listview异步加载图片,因为这样的文章在网上已经有很多了,比如这位仁兄写的就很好: http://www.iteye.com/topic/685986 我也是因为看了这篇文章而受到了启发. 先说说这篇文章的优点把,开启线程异步加载图片,然后刷新UI显示图片,而且通过弱引用缓存网络加载的图片,节省了再次连接网络的开销. 这样做无疑是非常可取的方法,但是加载图片时仍然会感觉到轻微的卡屏现象,特别是listview里的item在进行快速滑动的时候. 我找了一下原因,…
网上找了一张图, listview 异步加载图片之所以错位的根本原因是重用了 convertView 且有异步操作. 如果不重用 convertView 不会出现错位现象, 重用 convertView 但没有异步操作也不会有问题. 我简单分析一下: 当重用 convertView 时,最初一屏显示 7 条记录, getView 被调用 7 次,创建了 7 个 convertView. 当 Item1 划出屏幕, Item8 进入屏幕时,这时没有为 Item8 创建新的 view 实例, Ite…
android UI 往右滑动,滑动到最后一页就自动加载数据并显示 如图: package cn.anycall.ju; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.content.ActivityNotFoundException; import andr…
在做一个App的过程中,用到WebView来显示几个页面.在这个过程中发现有些页面的显示出现了异常:页面中的Img链接在页面第一次加载时无法正常显示图片,退出页面再次进入后可正常显示.开始以为是WebSettings的问题,各种设置,无解. 无意中发现那几个页面中有一个页面始终加载图片是OK的,没有一个失败过.对比这个页面和其它页面的源码区别,发现失败的页面的Img标签是用<Table>标签控制的:加载OK的页面,其Img标签置于<Div>中.百度<Table>和<…