繁体   English   中英

为什么从图库中选择的更大尺寸的图像不显示?

[英]Why is the image chosen from gallery with bigger size not showing?

        if (requestCode == 1 && resultCode == Activity.RESULT_OK && data != null) {
        imageuri = data.data
        bitmap = MediaStore.Images.Media.getBitmap(contentResolver, imageuri)
        try {
            if(bitmap != null){
                Toast.makeText(applicationContext, "Not empty",Toast.LENGTH_SHORT).show()
                imageView?.setImageURI(imageuri)
            }else{
                Toast.makeText(applicationContext, "It is empty", Toast.LENGTH_SHORT).show()
            }
        } catch (e: IOException) {
            e.printStackTrace()
            displayExceptionMessage(e.message)
        }

    }

其他 2MB 及以下的图像正在加载,但当它大于 2MB 时则不显示。 有人可以告诉错误吗? 谢谢

这是因为您正在尝试使用 bitmap 进行读取。您可以这样做:

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) 
 {
       super.onActivityResult(requestCode, resultCode, data)

if (requestCode == 1 && resultCode == Activity.RESULT_OK && data != null) {
    imageuri = data.data
    try {
   
        imageView!!.setImageUri(imageuri)
    } catch (e: IOException) {
        e.printStackTrace()
    }

这解决了我的问题:

      imageView?.let {
        Glide.with(this)
        .load(imageuri)
        .into(it)}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM