【问题标题】:Android Kotlin: fetching image from directoryAndroid Kotlin:从目录中获取图像
【发布时间】:2020-05-29 16:06:44
【问题描述】:

我正在使用 Kotlin 前端/Python 后端构建应用程序。我的 python 脚本在 getFilesDir() 目录 (/data/user/0/com.example.myproject/files/mygraph.png) 下创建一个 .png 文件。然后我想使用 kotlin 来获取 .png 文件并将其显示在 imageview 上。

相信我必须使用 Bitmap 但对它不熟悉,因此非常感谢您的支持。

class Graph : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_graph)

        val dir = "/data/user/0/com.example.myproject/files/mygraph.png"
        //Bitmap function

    }
}

【问题讨论】:

  • 下面的答案是创建一个新的ImageView,它不附加到Activity,所以你永远不会看到它。如果您已经在 activity_graph 布局中有 <ImageView>,那么您可以将其与他们演示的 BitmapFactory.decodeFile() 一起使用。但是,这将在主线程上加载,因此您的 UI 会挂起一点。最好在单独的线程上执行此操作,或者您可以使用将为您执行此操作的图像加载库;例如,Glide、Picasso、Coil 等。

标签: android kotlin bitmap android-imageview android-bitmap


【解决方案1】:

使用BitmapFactory解码文件路径

    val imageView = ImageView(this)
        imageView.setImageBitmap(BitmapFactory.decodeFile(filePath))

【讨论】:

  • 谢谢。现在如何将该值分配给 imageview?我有一个 imageview id graphRes 想在那里显示它。
  • 只需使用您的graphRes imageView 代替我的 imageView
  • 试过了,但我得到了一个空白图像。顺便说一句,我没有收到错误消息。
  • 检查你的文件路径
  • .png 文件存在于文件夹路径中,但我仍然无法获取图表。
猜你喜欢
  • 2012-09-28
  • 1970-01-01
  • 2018-12-12
  • 1970-01-01
  • 1970-01-01
  • 2020-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多