编辑文本框中提示的自定义位置。
Posted
技术标签:
【中文标题】编辑文本框中提示的自定义位置。【英文标题】:Custom Position of Hint in Edit Text box. 【发布时间】:2011-03-11 19:32:02 【问题描述】:我想知道是否有任何方法可以在“编辑文本”视图的底部获得提示——然后用户开始在框顶部输入文本。
作为一个额外的问题,有什么方法可以让提示在用户开始输入文本后不会消失。
【问题讨论】:
【参考方案1】:您可以使用“重力”属性设置文本的位置(如http://developer.android.com/reference/android/widget/TextView.html#setGravity(int) 所述)。因此,要将文本放在底部;
android:gravity="bottom"
并回答您的奖金问题;不,当文本输入到编辑文本视图中时,您无法显示提示。仅当框为空时才显示提示是定义的行为,如 http://developer.android.com/reference/android/widget/TextView.html#setHint(int) 中所述
(是的,我知道这些链接是针对 TextView 的,但 EditText 的所有文本定位和提示处理功能都来自 TextView)。
【讨论】:
谢谢,我想是这样的。我试图使用 TextWatcher 功能在文本框底部显示一个实时文本计数器作为提示。我已经得到了实时文本计数器和 android:gravity 的东西——但是我认为将提示放在 EditText 字段中会很酷......太糟糕了,它无法完成。【参考方案2】:其实有一种方法可以防止提示隐藏,而且很酷:-)
它很容易为您提供具有流畅动画的浮动标签外观,并且它来自 android 本身。没有额外的库和东西。
试试这个:
<android.support.design.widget.TextInputLayout
android:layout_
android:layout_>
<EditText
android:layout_
android:layout_
android:hint="Touch me and I'll fly!"/>
</android.support.design.widget.TextInputLayout>
您可以使用其他 xml 标记(如 android:gravity="start|center|end"
等)来更改行为。
作为奖励,您可以使用错误消息 :-) 这是该问题的链接:https://***.com/a/30953551/6474744
抱歉,我没有足够的声誉来发布图片,所以请自助:
http://i0.wp.com/androidlift.info/wp-content/uploads/2015/09/Screenshot_2015-09-28-17-03-561.png
享受:-)
【讨论】:
谢谢,这很酷,它正在工作,更重要的是,它与接受的答案相反,上面写着“并回答您的奖励问题;不,输入文本时无法显示提示编辑文本视图。仅当框为空时才显示提示是定义的行为,如“ 您需要为 TextInputLayout 添加设计支持库: implementation 'com.android.support:design:28.0.0'【参考方案3】:同时使用 android:gravity 和 android:hint 的问题在于它们在光标位置方面是相互关联的。当您使用重力定位提示并开始输入文本时,它会在与如果您希望它传统上从左上角开始,那么您的提示将是一个问题。
【讨论】:
以上是关于编辑文本框中提示的自定义位置。的主要内容,如果未能解决你的问题,请参考以下文章