Bol*_*aul 3 android android-recyclerview
TL,DR:我如何强制再循环视图再次调用onBindViewHolder方法,至少对于可见项?
调用notifyDataSetChanged()会使列表滞后几毫秒,有没有更好的方法?谢谢.
我有一个带有ImageView的布局.当为imageview调用bind时,我向服务器发送请求以获取图像.加载图像时,我将位图保存在ViewHolder,T变量中.在bind方法中,我检查variable.getBitmap()是否为null,如果是,我将设置imageview.现在,如果我滚动列表,将加载图像,但如果没有,则图像视图仍为空白,因为未再次调用onBindViewHolder.
谢谢.
notifyDataSetChanged()绝对是正确的方式.也许notifyItemChanged()更好,因为它只绑定所选项目.如果我的问题是正确的,那么您似乎在主线程上做了一些不应该在那里完成的事情.记住:永远不要在主线程上进行潜在的冗长操作,但总是使用类似的东西AsyncTask.
我认为这是一种更好的方法,可以异步下载图像,然后对其进行缓存,因此每次View回收时都不必下载.有图书馆.
在加载图像时,您可以显示一个ProgressBar或其他信号通知用户的信息,即图像正在加载.
| 归档时间: |
|
| 查看次数: |
7301 次 |
| 最近记录: |