【问题标题】:How do I have a chip in between of a normal text inside of a TextView?如何在 TextView 内的普通文本之间插入芯片?
【发布时间】:2019-01-29 16:24:53
【问题描述】:

您好,我确实想在我的应用中使用这种设计(截取自网络应用的屏幕截图):

我确实知道Material Components for Chips。但是,我如何在运行时动态地拆分多个 TextView,中间有一个 Chip,或者将 Chip 放在 TextView 内?如果没有 Webview,这可能吗?

文本在构建时未知。这是一个聊天应用程序。意味着我想在运行时决定在文本中放置芯片的位置和频率。原始文本是这样的:Test <a href=\"https://matrix.to/#/@DasNordlicht:matrix.ffslfl.net\">DasNordlicht</a> Test,如果这很重要的话。

【问题讨论】:

    标签: android textview android-chips


    【解决方案1】:

    引自 Material Components Chip 文档:

    您还可以在需要 Drawable 的上下文中直接使用独立的 ChipDrawable。例如,启用自动完成的文本字段可以将文本的 sn-ps 替换为 ChipDrawable,使用跨度将其表示为语义实体。

    因此,要在 TextView 中使用 Chip,您需要创建一个 ImageSpan,它使用 ChipDrawable 作为其图像,并且可以包含在 TextView 的文本中。

    【讨论】:

    • 谢谢还不知道 ImageSpan :) 经过 5 个小时的挖掘,它终于可以工作了。 (主题和传递的上下文有一些问题)
    • @MTRNord 太棒了!
    • @MTRNord 对主题和传递的上下文有一些问题 -> 请用这部分更新代码:)
    • @anna_manzhula 我真的想不通(我会深入研究我的档案)。这段代码是我停止工作的项目的一部分。我什至认为我最终没有将它提交到源代码树中。我会尝试找到相关的代码行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-30
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多