如何调整按钮图像的大小?

时间:2017-12-05 13:47:41

标签: java android layout

我有以下布局

            <Button
                android:layout_width="fill_parent"
                android:layout_height="75dp"
                android:drawableLeft="@drawable/binocular"
                android:gravity="left|center_vertical"
                android:text="search" />

看起来像:

enter image description here

图片太大了。我只想将图片左侧与corredct尺寸对齐,因此它符合按钮的height

我知道我可以通过代码调整图像的边界。但我想知道,如果有办法layout specification

有一个解决方案:how to change a drawableLeft icon size on a button?(接受回答)

我想这是正确的,但我不明白,layer-list放在哪里以及如何在button中引用它。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

您必须创建新的可绘制xml文件,并在其中放置图层列表代码。例如button_background.xml。

然后在按钮上设置这个可绘制的

.headerOfBio {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.displayPic {
  background: url("https://aeutas.org.au/wp-content/uploads/2014/12/people-icon.png") no-repeat;
  border-radius: 50%;
  height: 100px;
  width: 100px;
  border-radius : 50%;
}

答案 1 :(得分:1)

scaleType

上设置ImageButton属性
<ImageButton android:id="@+id/iconBtn"
  android:layout_width="64dip"
  android:layout_height="64dip"
  android:src="@drawable/binocular"
  android:scaleType="fitCenter"
  android:background="#00000000"/>

答案 2 :(得分:0)

将ImageButton与这些属性一起使用

<ImageButton
        android:id="@+id/button_topleft"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="2dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="0dp"
        android:layout_weight="1"
        android:adjustViewBounds="true"
        android:padding="20dp"
        android:adjustViewBounds="true"
        android:scaleType="centerInside"        
 />

填充在scaleType失败后调整图像大小时起着非常重要的作用。

希望这会对你有所帮助。