2014-07-23 69 views
0

i'have將位圖從oneActivity獲取到imageview中的secondSctivity。現在我想把這個位圖作爲Imageview的相同大小。但是這個代碼現在正在工作。將位圖設置爲圖像的大小查看

ViewTreeObserver vto = ph.getViewTreeObserver(); 
    vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { 
     public boolean onPreDraw() { 
      ph.getViewTreeObserver().removeOnPreDrawListener(this); 
      ph.getMeasuredWidth(); 
      ph.getMeasuredHeight(); 
      return true; 
      } 
     }); 


    // set contact Photo Bitmap in Image view------------------------------------------------- 

    byte[] byteArray = getIntent().getByteArrayExtra("image"); 
    if (byteArray != null) { 
     bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length); 
    } 

    if (bmp != null) { 
     Bitmap bmpimg = Bitmap.createScaledBitmap(bmp,ph.getMeasuredWidth(),ph.getMeasuredHeight() , true); 
     ph.setImageBitmap(createRoundedBitmap(bmpimg,5)); 



    } else { 
     ph.setImageResource(R.drawable.upload_photo); 
    } 

我該怎麼辦?

+0

首先你會發現你的Imageview寬度和高度,然後縮放你的位圖的寬度和高度。 –

+0

ImageViewની高度અને寬度કેવીરીતેસેટકરું – user3855491

+0

位圖bmpimg = Bitmap.createScaledBitmap(bmp,ph.getMeasuredWidth(),ph.getMeasuredWidth(),true); .......這是行不通的 – user3855491

回答

0

你會得到ImageView size by imageViewObject.getWidth();和obj.getHeight();然後按照未經測試的值縮放位圖。

Bitmap bmpimg = Bitmap.createScaledBitmap(bmp, obj.getWidth(), getHeight(), true); 

我希望這會有所幫助。

+0

這是不行的.... ViewTreeObserver vto = ph.getViewTreeObserver(); \t \t vto.addOnPreDrawListener(新ViewTreeObserver.OnPreDrawListener(){ \t \t公共布爾onPreDraw(){ \t \t ph.getViewTreeObserver()removeOnPreDrawListener(本); \t \t ph.getMeasuredWidth(); \t \t pH值.getMeasuredWidth(); \t \t \t 返回\t真; \t \t} \t \t}); – user3855491

+0

haa !!什麼?!這是什麼。 – NoXSaeeD

+0

我發現這從http://stackoverflow.com/questions/10411975/how-to-get-the-width-and-height-of-an-image-view-in-android# – user3855491

0

這裏是非常簡單和容易的解決方案相信它會爲你工作的ImageView的 使用「scaleType」屬性在XML文件中 保持它作爲「scaleType = fitXY」 這裏是snippest

<ImageView 
      android:id="@+id/img1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:scaleType="fitXY"/> 

享受編碼

+0

先生,我想在imageview中設置位圖。但位圖大小必須與imageview大小相同。 – user3855491

+0

我知道你只是嘗試這一點,第二件事保持你的位圖比例爲您的要求,它會工作只是試試這個,如果它不會滿足您的要求,然後拒絕這個解決方案,但首先嚐試這個 –

+0

您可以更改imageview的高度和寬度根據XML –

相關問題