Android中如何移动EditText内的图标?解决图标无法右移问题
解决EditText图标无法向右移动的问题
方法一:给EditText添加左内边距
直接在EditText标签中添加android:paddingLeft属性,调整数值即可让图标(及输入内容)整体向右移动:
<EditText android:id="@+id/inserisciNumero" android:hint="Numero di telefono" android:layout_width="321dp" android:layout_height="46dp" android:drawableStart="@drawable/iconatelefono" android:drawablePadding="12dp" android:background="@drawable/sottofondoedit" android:paddingLeft="24dp" <!-- 新增属性,数值按需调整 --> tools:layout_editor_absoluteX="36dp" tools:layout_editor_absoluteY="183dp" />
方法二:用Inset Drawable单独调整图标位置
如果只想移动图标而不改变输入文本的位置,可以创建一个带内边距的Drawable包裹原图标:
- 在
res/drawable目录下创建icon_inset.xml文件:
<inset xmlns:android="http://schemas.android.com/apk/res/android" android:insetLeft="16dp"> <!-- 设置图标左侧的额外间距 --> <bitmap android:src="@drawable/iconatelefono" /> </inset>
- 修改EditText的
drawableStart属性指向这个新的Drawable:
android:drawableStart="@drawable/icon_inset"
补充说明
如果是想让整个EditText控件向右移动,直接调整tools:layout_editor_absoluteX的数值(比如改成更大的dp值)即可,但绝对布局在实际开发中不推荐,建议改用ConstraintLayout等更灵活的布局来设置控件的margin或约束。
内容的提问来源于stack exchange,提问作者Mikandre
相关产品推荐
相关产品推荐

