【发布时间】:2020-06-14 16:47:17
【问题描述】:
我想在左边缘的EditText 内添加一个“搜索”图标?例如 Facebook Android 应用中的搜索框?
【问题讨论】:
标签: android
我想在左边缘的EditText 内添加一个“搜索”图标?例如 Facebook Android 应用中的搜索框?
【问题讨论】:
标签: android
在 EditText 上使用 android:drawableLeft 属性。
<EditText
...
android:drawableLeft="@drawable/my_icon" />
【讨论】:
drawablePadding 属性调整填充。
您可以按照marcos 的建议在 XML 中设置 drawableLeft,但您可能还想以编程方式设置它 - 例如响应事件。为此,请使用 setCompoundDrawablesWithIntrincisBounds(int, int, int, int) 方法:
EditText editText = findViewById(R.id.myEditText);
// Set drawables for left, top, right, and bottom - send 0 for nothing
editTxt.setCompoundDrawablesWithIntrinsicBounds(R.drawable.myDrawable, 0, 0, 0);
【讨论】:
null。
如果你想使用Android的默认drawable,你可以像这样使用@android:drawable/ic_menu_search:
<EditText android:id="@+id/inputSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawableLeft="@android:drawable/ic_menu_search"
android:hint="Search product.."
android:inputType="textVisiblePassword"/>
【讨论】:
使用:
<EditText
..
android:drawableStart="@drawable/icon" />
【讨论】:
在 EditText 上使用 android:drawbleStart 属性
<EditText
...
android:drawableStart="@drawable/my_icon" />
【讨论】:
使用相对布局并将按钮设置为编辑文本视图的左对齐,并将文本视图的左侧填充设置为按钮的大小。如果不对填充进行硬编码,我想不出一个好方法:/
您也可以使用apk tool 来解压 facebook apk 并查看其布局文件。
【讨论】: