我试图将EditText放在单行的左侧的ImageView中.但是我无法使图像被正确缩放以匹配文本输入的高度.
布局很简单:
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:scaleType="fitStart"
android:background="#f00"
android:src="@drawable/icon" />
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
(我用红色突出显示图像背景,查看ImageView分配的实际空间)
如果我指定ImageView的确切高度:
android:layout_height="48dp"
那么我得到最接近的视图我需要的:
但是我不知道EditText的确切高度,所以我无法在ImageView中指定它.
当指定ImageView的高度来填充它的父(以匹配“EditText”高度):
android:layout_height="fill_parent"
那么我会在图像和文本输入之间获得意想不到的额外余量:
实际上,在这种情况下,ImageView宽度等于未缩放的图像宽度,而图像被缩放.
如果我将layout_height指定为48dp并将adjustViewBounds设置为false,则与下图所示的相似:
android:layout_height="48dp"
android:adjustViewBounds="false"
所以,这里的问题是:如何正确定义布局以缩放图像以匹配编辑条目的高度,同时使ImageView的宽度缩小到缩放的图像宽度?换句话说,如何摆脱这个额外的空间?