BitmapDrawable的重力不起作用

时间:2016-08-29 03:53:37

标签: android

我在xml中有一个BitmapDrawable

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:antialias="true"
        android:autoMirrored="true"
        android:dither="true"
        android:gravity="bottom"
        android:filter="true"
        android:src="@drawable/test"
/>

我将这个位图用于如下的Imageview:

<ImageView android:id="@+id/detail_img"
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:background="@color/colorAccent"
           android:src="@drawable/bitmap_drawable"/>

结果:
enter image description here
您可以看到顶部和底部有一些填充。并且位图没有与imageview的底部对齐,但我在位图xml中设置了android:gravity="bottom"。 我也试过android:gravity="top",它也没有用。 我的代码有什么问题。我用Google搜索,但没有找到任何相关信息。

我只是想知道为什么位图xml中的gravity属性不起作用。

提前致谢。

我知道我可以将android:scaleType="fitEnd"设置为可以让imageview alignd到底的imageview。

2 个答案:

答案 0 :(得分:0)

试试这个:android:adjustViewBounds。

将此设置为true,如果您希望ImageView调整其边界以保留。那么,android:adjustViewBounds =“true”可以解决问题。

答案 1 :(得分:0)

将你的ImageView放在任何LinearLayout中并将linearlayout gravity设置为center或者你想要的任何人就像Wise ..

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal" >


<ImageView 
    android:id="@+id/iv"
    android:layout_width="50dp"
    android:layout_height="50dp"
    />

</LinearLayout>

这应该是有效的.. 谢谢