【问题标题】:How to set autocomplete text inside EditText in android如何在android中的EditText中设置自动完成文本
【发布时间】:2018-12-13 06:02:57
【问题描述】:

我有一个 EditText。当我输入内容时,我会根据输入的字符串进行数据库查询,并在回收站视图中显示结果。我想在编辑文本本身中以灰色显示查询结果中的第一个结果项。例如。

我输入“sa”

结果显示为:

“咝咝” “萨布” “囊”

我希望在获取结果后,编辑文本应显示第一项: "sa|aa"

这里 "sa" 将是黑色,然后是 cursor,然后 aa 将是灰色。

这样用户就有了自动完成的感觉。

我面临的问题是,我如何使用两个不同颜色的字符串在编辑文本上设置文本。我尝试同时设置文本和提示,看起来提示在设置文本时不起作用。 正确的做法是什么?

【问题讨论】:

  • ForegroudColorSpan

标签: android android-edittext autocompletetextview


【解决方案1】:

您可以查看this StackOverflow answer 了解大致情况。查看开发者网站,深入了解Spans

SpannableStringBuilder spannable = new SpannableStringBuilder("Text is spantastic!");
spannable.setSpan(
    new ForegroundColorSpan(Color.RED),
    8, // start
    12, // end
    Spannable.SPAN_EXCLUSIVE_INCLUSIVE
);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    相关资源
    最近更新 更多