1

这是我的安卓代码:

InputStream input = getAssets().open("photo.jpg");
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(input, null, options);
System.out.println("### img size: " + options.outWidth + "x" + options.outHeight);

但我发现无论我的图像有多大,它总是打印:

### img size: 100x100

哪里错了?


更新

重新部署我的应用程序后它工作正常,但我没有修改任何内容。这很奇怪,但我想把这个问题留在这里,也许有一天它会再次出现。

4

1 回答 1

0

//读取位图尺寸和类型

BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), R.id.myimage, options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
String imageType = options.outMimeType;

参考这里:

//你没有指定对象名称

InputStream input = getAssets().open("photo.jpg");

BitmapFactory 类提供了几种解码方法(decodeByteArray(), decodeFile(), decodeResource()等)用于从各种来源创建位图。

于 2012-09-21T07:35:52.617 回答