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