我想在上图中创建一个类似于搜索的编辑文本。 我之前尝试使用带有可绘制左侧的编辑文本来创建它,但是我无法使用padding和drawablePadding使图像与文本居中。
目前我的xml布局中有这个。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/countryCodeSearch"
android:layout_width="match_parent"
android:layout_height="25dp"
android:background="@color/tiara"
android:hint="@string/search"
android:gravity="center"
android:layout_marginRight="10dp"
android:layout_marginEnd="10dp"
android:layout_marginTop="2dp"
android:layout_centerVertical="true"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="18dp"
android:src="@drawable/mag_glass"
android:layout_centerVertical="true"
android:layout_marginLeft="90dp"
android:layout_marginStart="90dp"/>
</RelativeLayout>
有人能指出我更好的方向吗?我在Stack Overflow上看了一些其他的例子,但是找不到textview提示和drawable需要居中的地方。
全部谢谢!
答案 0 :(得分:0)
在你班上:
EditText searchEditText = (EditText) findViewById(R.id.searchEditText);
Drawable img;
Resources res = getResources();
img = res.getDrawable(R.drawable.search_icon);
img.setBounds(0, 0, 40, 40);
searchEditText.setCompoundDrawables(img, null, null, null);
searchEditText.setCompoundDrawablePadding(40);
searchEditText.setPadding(40,0,0,0);
您必须将setBounds
,setCompoundDrawablePadding
和setPadding
更改为您的值。