我对Android很新,并被要求改进应用程序。该应用程序使用保存在手机文件中的图像。我添加了一个功能,其中应用程序还使用保存在drawable文件夹中的图像。但是,以下代码现在不起作用:
public static int[] getImageSize(Uri uri) {
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(uri.getPath(), options);
return new int[] { options.outWidth, options.outHeight };
}
返回图像的大小。由于decodeFile()方法,我很确定它无法正常工作。我如何解决这个问题,以使其适用于我的drawables?
答案 0 :(得分:0)
您需要检查图像是否是文件中的位图,或者它是否是可绘制的。使用此代码创建一个新函数以获得可绘制的大小
public static int[] getImageSize(Drawable image) {
int iHeight = image.getIntrinsicHeight();
int iWidth = image.getIntrinsicWidth();
return new int[] { iWidth , iHeight };
}