我正在使用 ViewPager 创建我自己的画廊,它“连接”到 ArrayList 保存要显示的图像路径。
到目前为止,我使用:
Bitmap bitmap = BitmapFactory.decodeFile(path);
imageView.setImageBitmap(bitmap);
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
它工作正常,但图片非常大,我不必要地解码整个图片,因为它后来按比例缩小以适应布局。当我快速滚动时,它很慢,有时会发生 OutOfMemoryError 崩溃。
所以问题是:如何有效地解码图像,使其 100% 适合 ImageView.ScaleType.CENTER_INSIDE 只知道它的路径?