繁体   English   中英

如何在Android中获取可绘制图像的大小

[英]How to get the size of an drawable image in android

目前我在android中的可绘制图像中工作,现在我想以KB为单位获取可绘制图像的大小,我该如何获取它,欢迎任何想法。

我在这里获取默认的应用程序图标并存储在可绘制数组中,是否为每个图标创建一个新文件以获取长度是一个好主意? 请提出任何更好的主意,谢谢

这是个主意。 将可绘制图像转换为字节数组...数组长度是可绘制图像的大小(以字节为单位)。 不知道是否有更好的方法...

我认为您必须将其存档。 但不确定是否有效

File root = new File(Environment.getExternalStorageDirectory()
                            + File.separator + "temp" + File.separator);
                    root.mkdirs();
                    File file= new File(root, "temp.png");

FileOutputStream fOut = new FileOutputStream(file);
                                                 bmp.compress(Bitmap.CompressFormat.PNG, 100, fOut);//bmp is bitmap of ur image
                         fOut.flush();
                         fOut.close();

使用file.length()应该可以为您提供文件大小。

我不知道这是否在所有情况下都适用,但是您可以使用以下方法:

Drawable d;
long kbsize = ((BitmapDrawable)d).getBitmap().getByteCount() / 1024;

暂无
暂无

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

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