2015年12月28日 星期一

ImageView寬高時保持原比例

我只是要把一張bitmap放到App上置中秀出來, 並且可以保持原比例的放滿整個畫面.
為這樣子的功能Google了蠻久的, 因為總覺得不需要太複雜的設定, 就要可以達到這樣子的目的才對啊. 最後終於發現為什麼我一開始無法保持原比例放大了. 目前的結論如下:

layout的xml設定如下(它是一個LinearLayout 再加一個ImageView)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:gravity="center" >
    <ImageView android:id="@+id/template_imageview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
    </ImageView>
</LinearLayout>
android:layout_height="match_parent" <=== 很多人說要用"wrap_content"

然後在Java的程式裏面
ImageView imageView = (ImageView) findViewById(R.id.template_imageview);
imageView.setImageBitmap(downloadBitmap);
imageView.setAdjustViewBounds(true);
最重要的一行imageView.setAdjustViewBounds(true); 不設定為true的話無法放大圖片.

1 則留言:

Blogger 提到...

If you are in search of the highest paying Bitcoin ad network, register on MellowAds.