美文网首页Android开发
列表中请求多张图片并加载

列表中请求多张图片并加载

作者: 撩人的风光 | 来源:发表于2021-07-20 15:36 被阅读0次

最近有人问一个奇怪的问题

示例

就用简书首页的列表举例子,一个item中有很多图片,或者说又套了一个图片的列表,那么这种效果正常来说本来实现起来没有什么问题,但是数据是这样的:

{
    "pictureIds":[
        1,2,3,4,5
    ]
}

上面的pictureIds是图片的id,这也就意味着,我们需要在列表的item中进行网络请求,这种情况下,因为异步的原因,可能出现图片错乱的问题,当然要想解决这个问题,也是很简单的,kotlin举例子:

class ImageLoadGlide(val context: Context, val imageView: ImageView) {
     fun load(listener: ((String) -> Unit) -> Unit) {                           imageView.setImageDrawable(context.resources.getDrawable(R.drawable.loading_01))                     listener.invoke(::listener)
     }

     fun listener(url: String) {
         imageView.loadRes(url)//Glide加载图片
     }
}

上面代码的意思,相当于创建了一个自定义ImageView,将在图片中进行网络请求,并且加载。

ImageLoadGlide(context, imageView).load {
     //网络异步请求图片
     //成功回调 url为地址
     val url = "http://..." it(url)
}

使用起来就是这样的,相当方便,在load中进行网络图片地址获取,并且通过回调的函数将地址回调回去,这样就解决了遇到的问题了。

相关文章

  • 列表中请求多张图片并加载

    最近有人问一个奇怪的问题 就用简书首页的列表举例子,一个item中有很多图片,或者说又套了一个图片的列表,那么这种...

  • FlatList显示图片列表

    需求: 加载网络图片,列表形式展示,并缓存不显示的item不加载图片正在加载的图片,取消加载(不显示情况下) 参考...

  • PHPhotoKit

    加载图片两种方式: 当同时加载多张原图(大图)的时候,方式2如果target设置成原图大小,那么加载过程会很慢,并...

  • LIstView嵌套GridView显示多张图片

    最近项目中需要用到加载多张网络图片并且显示到屏幕中,单个GridView可以显示多张图片,但是现在需要多个Item...

  • TextView使用Picasso加载带多张图片的Html

    在Textview中异步加载带图片的Html文章很多,使用Picasso来异步加载多张时我遇到了onBitmapL...

  • 小程序之6:并发请求下载多个图片文件

    为了小程序用户体验,在进行页面加载时通常会包含多张图片的下载请求,除了在还进入小程序之前利用加载时间的空挡提前对页...

  • sonarqube+sonar-scanner-engine扫描

    一. 获取插件并加载 1. 获取已有插件列表 请求/api/plugins/installed获取已安装的插件or...

  • vue自动触发事件

    项目中进入页面 先请求后台渲染一个列表,然后点击每个列表过后,再次请求后台加载该列表项下面的子列表,类似异步加载树...

  • less配合rem雪碧图的使用

    在移动端一个页面有多个小icon小图片的情况下,如果用多张图片来做无疑是增加的页面加载的时间。为了减少http请求...

  • web网站性能优化-1、减少Http请求

    1、减少Http请求 1)、图片地图 Image Maps 在导航栏中或其他超链接中使用多张图片,可以采用图片地图...

网友评论

    本文标题:列表中请求多张图片并加载

    本文链接:https://www.haomeiwen.com/subject/jvfrmltx.html