【发布时间】:2015-03-30 06:02:03
【问题描述】:
我的 EditText 中提示的长度比 ET 视图的宽度长一点。那么如何将选取框属性设置为 ET 视图。我试过设置它,但应用程序崩溃并给出错误:E/AndroidRuntime(2095): Caused by: java.lang.IllegalArgumentException: EditText cannot use the ellipsize mode TextUtils.TruncateAt.MARQUEE p>
我已经阅读了 ellipsize 方法的文档,但没有得到我应该做的事情。我已经尝试了这两个步骤:
1)
android:maxLines="1"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
2) android:maxLines="1"
android:scrollHorizontally="true"
ellipsize 方法的文档: 使文本中长于视图宽度的单词被省略,而不是在中间断开。您可能还需要 setSingleLine() 或 setHorizontallyScrolling(boolean) 将文本限制为单行。使用 null 关闭省略号。如果已使用 setMaxLines(int) 设置两行或多行,则仅支持 END 和 MARQUEE(其他椭圆化类型不会做任何事情)。
让我知道必须进行哪些修改才能正常工作。谢谢
【问题讨论】:
-
嗨@DJphy 我面临同样的问题,因为我的应用程序支持本地化,因此对于某些语言环境,编辑文本提示大于编辑文本。你有没有找到任何解决方案?您的帮助将不胜感激。
-
@umesh 我发现你不能为编辑文本设置选框椭圆,但你可以在末尾设置 ellipsize。 etView.setHint(hintMsg); etView.setSingleLine(true); etView.setMaxLines(1); etView.setEllipsize(android.text.TextUtils.TruncateAt.END); 现在这将切断额外的提示文本(如果提示文本长度大于编辑文本视图的宽度)并在结束。
标签: android android-edittext android-view