BitmapFactory.Options поможет вам получить ширину и высоту битовой карты, прежде чем она загружена в ваш пользовательский ImageView. попробовать это ..
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), R.id.myimage, options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
После добавления растрового изображения к пользовательскому зрения изображения, если вы хотите, чтобы рассчитать ширину и высоту битовой карты, вы должны использовать RACT и холст, как это, в простых словах RACT в основном рисовать связаны область вашего растрового изображения с использованием холста.
Drawable drawable = myImageView.getDrawable();
//you should call after the bitmap drawn
Rect bounds = drawable.getBounds();
int width = bounds.width();
int height = bounds.height();
Matrix m = new Matrix();
m.set(myImageView.getImageMatrix());
float[] values = new float[9];
m.getValues(values);
int bitmapWidth = values[Matrix.MSCALE_X]*drawable.getIntrinsicWidth(); //your bitmap's width
int bitmapHeight = values[Matrix.MSCALE_Y]*drawable.getIntrinsicHeight(); //your the bitmap's height
Hi @Radhe. Мы делаем код. Это после myImageV.setImageDrawable (drawable1) ;? Я хочу, чтобы ширина была равна высоте растрового изображения внутри пользовательского изображения. Спасибо –
вы хотите рассчитать ширину и высоту перед настройкой растрового изображения внутри изображения? см. этот http://developer.android.com/intl/in/training/displaying-bitmaps/load-bitmap.html#read-bitmap – Radhey
Нет. Извините за недоразумение. Я хочу получить ширину и высоту растрового изображения после того, как он был отображен в пользовательском представлении изображения. –