如何解决从路径生成位图列表以将其绘制在画布上很慢
我已经在智能手机上存储了png列表:
image001.png,image002.png,...,image175.png,而每个图像为200-250KB。
我想在画布上画它们。因此,我想我需要将它们转换为位图,以便使用它们的路径:当有175张图像时,BitmapFactory.decodeFile会变慢。我试图将inSampleSize设置为2并且仍然很慢(大约需要4秒)。
File[] files = myFolder.listFiles();
List<File> directoryListing = new ArrayList<>();
directoryListing.addAll(Arrays.asList(files));
long start = System.currentTimeMillis();
for (int i = 0; i < directoryListing.size(); i++) {
String path = directoryListing.get(i).getPath();
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inJustDecodeBounds = true;
BitmapFactory.decodeFile(path,opts);
opts.inJustDecodeBounds = false;
opts.inSampleSize = 1;
Bitmap bmp = BitmapFactory.decodeFile(path,opts);
listBitmaps.add(bmp);
}
任何想法如何使listBitmap生成更快?我的意思是甚至不到1秒。
请注意,如果不可能的话,列表中的第一张图纸应该不会很快,但我希望下一张图纸会很快(即使我关闭应用程序并再次打开它)
另一件事:png是从webm提取的,并且具有alpha。 (画布不知道绘制webm)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。