如何在EditText中显示提示文字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在EditText中显示提示文字相关的知识,希望对你有一定的参考价值。
参考技术A 在EditText内部显示提示文字,这部分被锁,不可删除或修改,文字在后面输入。1.
一般可透过android:drawableLeft属性来实现。首先做一个带有提示文字的图片,即提示文字当作图片来显示,透过android:drawableLeft指定资源的ID。这种方法不灵活,不可随意更改提示文字,需要更换图片。
2.
2.透过android:paddingLeft属性和Canvas来实现。具体是:编写一个类继承自EditText,覆盖其中的onDarw()方法,在该方法中编写提示文字。
3.
protected
void
onDraw(Canvas
canvas)
4.
Paint
paint
=
new
Paint();
5.
paint.setTestSize(18);
6.
paint.setColor(Color.GRAY);
7.
//编写提示文字。
8.
canvas.drawText(“提示文字:”,2,getHeight()/2+5,paint);
9.
super.onDraw(canvas);
10.
编写完提示文字后,在提示文字后面输入文字,需要使用android:paddingLeft属性根据提示文字的宽度设定开始输入文字的位置。
Android:单行中的EditText提示
【中文标题】Android:单行中的EditText提示【英文标题】:Android: EditText hint in single line 【发布时间】:2011-06-19 18:14:43 【问题描述】:为了在EditText
中设置单行,我们使用android:singleLine="true"
,但我想为提示文本设置单行,它很大,我想在一行中显示它:
http://google.myopenid.***.com
我正在使用以下代码:
<EditText android:id="@+id/editText1"
android:layout_
android:layout_
android:hint="@string/defaultUrl"
android:singleLine="true" />
注意:defaultUrl
是动态且非常长的 URL。
【问题讨论】:
所以你希望提示 url 只显示为一行? 您在一行中使用了这么长的提示文本,当用户无法一次阅读所有内容时是否有意义? 我试图只显示小网址,然后像 google.com/... 【参考方案1】:你可以试试
android:maxLines="1"
【讨论】:
我已经试过了,还是不行。感谢您的支持。如果有任何其他想法或可以告诉我如何自定义课程。【参考方案2】:你可以使用
android:ellipsize="end"
android:maxLines="1"
在单行中显示您的提示文本,但您将无法看到整个文本,因为
android:ellipsize="end"
截断末尾的文本。
【讨论】:
【参考方案3】:同样的问题。
解决办法:
EditText.setHint("hint content".replace("\n"," "))
【讨论】:
这没有提供问题的答案。一旦你有足够的reputation,你就可以改为comment on any post,提供answers that don't require clarification from the asker以上是关于如何在EditText中显示提示文字的主要内容,如果未能解决你的问题,请参考以下文章