当前位置: 首页 > news >正文

Android Coil 3 data加载图的Bitmap或ByteArray数据类型,Kotlin

Android Coil 3 data加载图的Bitmap或ByteArray数据类型,Kotlin

import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.os.Bundle
import android.util.Log
import android.widget.ImageView
import androidx.appcompat.app.AppCompatActivity
import coil3.ImageLoader
import coil3.SingletonImageLoader
import coil3.imageLoader
import coil3.request.ErrorResult
import coil3.request.ImageRequest
import coil3.request.target
import coil3.size.Scale
import java.io.ByteArrayOutputStreamclass MainActivity : AppCompatActivity() {companion object {const val TAG = "fly/MainActivity"}override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)SingletonImageLoader.setSafe { ctx ->ImageLoader.Builder(ctx).build()}setContentView(R.layout.activity_img)val imageView1 = findViewById<ImageView>(R.id.image1)val imageView2 = findViewById<ImageView>(R.id.image2)val bmp1 = BitmapFactory.decodeResource(this.resources, android.R.drawable.ic_menu_gallery)val req1 = ImageRequest.Builder(this).data(bmp1) //直接加载Bitmap.scale(Scale.FIT).listener(object : ImageRequest.Listener {override fun onError(request: ImageRequest, result: ErrorResult) {Log.e(TAG, "onError ${request.data}")}}).target(imageView1).build()imageLoader.enqueue(req1)val bmp2 = BitmapFactory.decodeResource(this.resources, android.R.drawable.ic_menu_gallery)val req2 = ImageRequest.Builder(this).data(toByte(bmp2)) //加载的ByteArray盛放了Bitmap数据。.scale(Scale.FIT).listener(object : ImageRequest.Listener {override fun onError(request: ImageRequest, result: ErrorResult) {Log.e(TAG, "onError ${request.data}")}}).target(imageView2).build()imageLoader.enqueue(req2)}fun toByte(bmp: Bitmap): ByteArray {val baos = ByteArrayOutputStream()bmp.compress(Bitmap.CompressFormat.PNG, 100, baos)return baos.toByteArray()}
}

Android ByteBuffer Bitmap byte[] convert,Kotlin_android 字节数组转bitmap-CSDN博客文章浏览阅读1.2k次。本文介绍了如何在Android中使用Kotlin将Drawable转换为Bitmap,以及Bitmap与byte[]数组之间的转换方法,包括使用`compress`和`decodeByteArray`函数。 https://blog.csdn.net/zhangphil/article/details/132699647Android Coli 3 ImageView load two suit Bitmap thumb and formal,Kotlin(七)-CSDN博客文章浏览阅读572次,点赞4次,收藏6次。本文在之前的基础上,进一步优化了Android应用中Coil 3.2.0版本加载缩略图和正式图的实现。主要改进点在于,当正式图加载完成后,主动删除缓存中的缩略图,以节省内存资源。文章提供了相关的Kotlin代码示例,并指出尽管配置了磁盘缓存路径,但实际运行时缓存文件为空,表明磁盘缓存未生效。作者建议将缩略图和正图的内存缓存合并为单一缓存系统,以提升性能。此外,文章还列出了所需的权限声明和Coil库的依赖项,包括对GIF、视频和SVG格式的支持。更多细节可参考CSDN博客链接。 https://blog.csdn.net/zhangphil/article/details/147983753Android Coil 3 Fetcher大批量Bitmap拼接成1张扁平宽图,Kotlin(2)_android fetcher-CSDN博客文章浏览阅读301次,点赞5次,收藏9次。遗留问题,配置的disk cache似乎没有work,指定的磁盘缓存文件路径生成是生成了,但是app跑起来运行后(图正常显示),里面是空的。Android拼接合并图片生成长图代码实现合并两张图片,以第一张图片的宽度为标准,如果被合并的第二张图片宽度和第一张不同,那么就以第一张图片的宽度为准线,对第二张图片进行缩放。Android拼接合并图片生成长图代码实现合并两张图片,以第一张图片的宽度为标准,如果被合并的第二张图片宽度和第一张不同,那么就以第一张图片的宽度为准线,对第二张图片进行缩放。_android fetcher https://blog.csdn.net/zhangphil/article/details/147114521

http://www.dtcms.com/a/272291.html

相关文章:

  • Redis BigKey 深度解析:从原理到实战解决方案
  • arm架构,arm内核,处理器之间的关系
  • 【部分省份已考真题】备战2025全国青少年信息素养大赛-算法创意实践挑战赛c++省赛/复赛真题——被污染的药剂
  • 如何发现Redis中的bigkey?
  • Django中序列化与反序列化
  • Python(31)PyPy生成器优化深度解析:JIT加速下的Python性能革命
  • 查看已安装 Django REST Framework (DRF) 版本
  • 【提高篇-基础知识与编程环境:1、Linux系统终端中常用的文件与目录操作命令】
  • 力扣-54.螺旋矩阵
  • QT - 串口QserialPort应用
  • C语言——预处理详解
  • C#中异步任务取消:CancellationToken
  • 【C++详解】STL-list模拟实现(深度剖析list迭代器,类模板未实例化取嵌套类型问题)
  • 【TCP/IP】10. 引导协议与动态主机配置协议
  • prometheus+grafana接入nginx实战
  • 零成本实现商品图换背景
  • 静态路由实验(2)
  • Vue3 深度解析:渲染器与渲染函数的奥秘
  • 【PTA数据结构 | C语言版】链式栈的3个操作
  • linux 4.14 kernel屏蔽arm arch timer的方法
  • 网络编程与自动化
  • 高亚科技签约奕源金属,助力打造高效智能化采购管理体系
  • Flask 入门教程:用 Python 快速搭建你的第一个 Web 应用
  • 在 Ubuntu 上安装和配置 Kafka
  • 下一代防火墙-终端安全防护
  • 普林斯顿大学DPPO机器人学习突破:Diffusion Policy Policy Optimization 全新优化扩散策略
  • Eigen 几何模块深拆:Isometry3d vs Affine3d + 变换矩阵本质详解
  • OSPF协议:核心概念与配置要点解析
  • 虚拟项目[3D物体测量]
  • 从真人到数字分身:3D人脸扫描设备在高校数字人建模教学中的应用