2014-07-23 61 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 –

相关问题