我正在按照有关有效显示位图的 android 开发人员教程进行操作,并且正在尝试读取位图的尺寸和类型。
这是我读取位图的代码:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
image = BitmapFactory.decodeResource(context.getResources(), R.id.myimage, options);
imageHeight = options.outHeight;
imageWidth = options.outWidth;
imageType = options.outMimeType;
我的 imageHeight、imageWidth 的结果似乎都是 0,并且 imageType 为 null。
图像为位图格式。
我的 onCreate 方法是
ImageView imgView = (ImageView) findViewById(R.id.myimage);
Drawable draw = getResources().getDrawable(R.drawable.bmp_login_screen);
imgView.setImageDrawable(draw);
TextView textView = (TextView) findViewById(R.id.text_view);
ReadBitmapDimen dimensions = new ReadBitmapDimen(getApplicationContext());
textView.setText(" Dimensions for userlogin image: outHeight = " + String.valueOf(dimensions.imageHeight));
谢谢!
最佳答案
更改此行 - image = BitmapFactory.decodeResource(context.getResources(), R.id.myimage, options);
到
image = BitmapFactory.decodeResource(context.getResources(), R.drawable.bmp_login_screen, options);
关于android - BitmapFactory.decodeResource 为 outHeight 和 outWidth 返回 0,inJustDecodeBounds = true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18716531/