2016-04-14 2 views
-1

Может ли кто-нибудь помочь мне получить ширину растрового изображения после того, как он был помещен в пользовательское изображение.Как получить ширину и высоту растрового изображения внутри пользовательского ImageView после вставки

Это мой текущий код, но этот код получает только ширину изображения.

// is place in the Activity 
@Override 
public void onWindowFocusChanged(boolean hasFocus){ 
int bW = myImageV.getWidth(); 
int bH = myImageV.getHeight(); 
{ 

ответ

1

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 
+0

Hi @Radhe. Мы делаем код. Это после myImageV.setImageDrawable (drawable1) ;? Я хочу, чтобы ширина была равна высоте растрового изображения внутри пользовательского изображения. Спасибо –

+0

вы хотите рассчитать ширину и высоту перед настройкой растрового изображения внутри изображения? см. этот http://developer.android.com/intl/in/training/displaying-bitmaps/load-bitmap.html#read-bitmap – Radhey

+0

Нет. Извините за недоразумение. Я хочу получить ширину и высоту растрового изображения после того, как он был отображен в пользовательском представлении изображения. –

Смежные вопросы