2010-07-05 39 views
15

我想知道是否有任何方法可以在编辑文本视图的底部获得提示 - 然后用户开始在框的顶部输入文本。在编辑文本框中提示的自定义位置。

作为一个额外的问题,有什么办法可以使提示不会消失,一旦用户开始输入文字。

回答

21

您可以使用“gravity”属性设置文本的位置(如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的处理功能)。

+1

谢谢,我觉得这是事实。我正在尝试使用TextWatcher功能在文本框的底部提供实时文本计数器显示。我已经得到了实时文本计数器和android:gravity东西的工作 - 但是我认为把提示放在EditText字段里面会很酷......太糟糕了,它无法完成。 – hwrdprkns 2010-07-05 20:13:12

3

同时使用android:gravity和android:hint的问题是它们相对于光标位置是相互关联的。当您使用重力定位提示并开始输入文本时,它将输入到与如果你希望它传统上在左上角开始,那么你的提示就是一个问题。

3

其实,有防止暗示从隐藏的方式,它是一个很酷的一个:-)

它很容易让你的浮动标签的外观与流畅的动画效果和它的Android本身的。没有额外的库和东西。

试试这个:

<android.support.design.widget.TextInputLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 
     <EditText 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:hint="Touch me and I'll fly!"/> 
</android.support.design.widget.TextInputLayout> 

您可以使用其他的XML标签,如android:gravity="start|center|end"和其他人改变行为。

作为奖励,你可以使用错误信息与它:-)这里的链接到这个问题:https://stackoverflow.com/a/30953551/6474744

可惜我没有足够的reputatuion张贴图片,所以帮助自己:

http://i0.wp.com/androidlift.info/wp-content/uploads/2015/09/Screenshot_2015-09-28-17-03-561.png

享受:-)

+0

谢谢,它非常酷,它的工作和更重要的是,它反对接受答案,它说:“并回答你的奖金问题;不,当文本输入到编辑文本视图时,你不能显示提示。仅在盒子为空时提示定义的行为,如“ – Saman 2017-10-21 12:10:45

相关问题