有什么办法可以省略EditText中的提示吗?

问题描述 投票:0回答:3

我的 EditText 中提示的长度比 ET 视图的宽度长一点。那么我如何为 ET 视图设置 marquee 属性。我尝试设置它,但应用程序崩溃并给出错误: E/AndroidRuntime(2095): Caused by: java.lang.IllegalArgumentException: EditText 无法使用椭圆模式 TextUtils.TruncateAt.MARQUEE

我已经浏览了 ellipsize 方法的文档,但没有得到我应该做的事情。我尝试了这两个步骤:

1)


    android:maxLines="1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"

2)

android:maxLines="1"
   android:scrollHorizontally="true"

椭圆方法文档: 导致文本中长于视图宽度的单词被省略而不是在中间断开。您可能还需要 setSingleLine() 或 setHorizontallyScrolling(boolean) 将文本限制为单行。使用 null 关闭椭圆化。如果使用 setMaxLines(int) 设置两条或多条线,则仅支持 END 和 MARQUEE(其他省略类型不会执行任何操作)。

让我知道必须进行哪些修改才能正常工作。谢谢

android android-edittext android-view
3个回答
2
投票

我认为选取框不适用于 EditText。如果提示的长度超过了 editText 的大小,您可以使用其他属性来省略提示。

android:ellipsize="end"

2
投票

@DJphy - 我找到了一个不需要设置省略号的解决方案。当您设置字符串来编辑文本时,只需将简单的 HTML 属性设置为字符串即可。 尝试了一些 HTML 技巧,它对我有用。 前任:- nameEdittxt.setHint(Html.fromHtml(

"<small><small><small>" + getString(R.string.enter_name) + "</small></small></small>"
));

这将有助于将提示设置得更小,并像平常设置的字体大小一样编辑文本大小。 看我的附件—— 在将 HTML 属性设置为提示之前 - enter image description here

  • 将 HTML 属性设置为提示后 - enter image description here

0
投票

为了实现此行为,您可以使用这些属性:

android:ellipsize="end"
android:inputType="text"
© www.soinside.com 2019 - 2024. All rights reserved.