在 EditText 中,我在 EditText 的右侧放置了一张图片,并使用 FrameLayout 添加了一个 textview,显示了 Edittext 的剩余输入计数(如 p1 所示)。
但是当输入太长时,它会与 textview 重叠,为了避免这种情况,我想使用 android:paddingRight 保持输入字符保持在左边,但结果就像 p2
如何使可绘制图标保持在右侧并且仅输入字符,例如p3? 谢谢你。
在 EditText 中,我在 EditText 的右侧放置了一张图片,并使用 FrameLayout 添加了一个 textview,显示了 Edittext 的剩余输入计数(如 p1 所示)。
但是当输入太长时,它会与 textview 重叠,为了避免这种情况,我想使用 android:paddingRight 保持输入字符保持在左边,但结果就像 p2
如何使可绘制图标保持在右侧并且仅输入字符,例如p3? 谢谢你。
您应该使用 RelativeLayout 而不是在 LinearLayout 中的文本之后附加按钮。
Android RelativeLayouts 的资源可以在以下位置找到:http: //developer.android.com/guide/topics/ui/layout/relative.html
那篇文章很值得一读
但一般原则是您可以定义如下内容:
<Button
android:id="@+id/button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_below="@id/name"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/times" />
注意layout_below
和layout_toLeftOf
上面,它定义了相对于其他对象的定位
使用ImageSpan在 EditView 中添加 Image 而不是在 Layout 中设置
这应该是一个替代示例,使用 RelativeLayout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_alignParentLeft="true" android:layout_centerHorizontal="true"
android:paddingRight="30dp"
/>
<ImageView android:layout_width="20dp" android:layout_height="20dp"
android:src="@drawable/your_image"
android:layout_alignParentRight="true" android:layout_centerHorizontal="true"
/>
</RelativeLayout>