问题标签 [spannablestringbuilder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
345 浏览

android - Android:通过 ImageSpan 在 textview 的末尾添加一个 imageview 并使图像可点击

在此处输入图像描述

我想实现如上截图所示的设计。图片是从 URL 中获取的,我只想在图片中添加一个点击监听器。尝试使用 Image span 但没有成功。有人可以帮我解决这个问题吗?

谢谢

0 投票
1 回答
25 浏览

java - SpannableStringBuilder 仅保留第一个 for 循环的格式

我正在尝试使用 for 循环来使用SpannableStringBuild列表中的字符串添加格式,但是在 中TextView,尽管已附加所有字符串,但只有初始 for 循环中附加的字符串保持其格式。相关代码如下:

0 投票
0 回答
26 浏览

android - 如果多次调用 SpannableStringBuilder 会导致额外的空白

我正在像这样使用 SpanableBuilder:

在下拉适配器类中使用此代码会导致多次执行此代码。如果我设置项目的背景颜色,它会获得正确的空间,但下拉菜单的高度会增加项目高度的 4 倍左右。

如果我设置textView maxHeightmaxLines,它工作正常。

谁能帮我理解里面到底发生了什么?

0 投票
1 回答
44 浏览

android - Spannable String Builder不应用字体

我正在尝试构建一个应用了两种不同自定义字体的字符串。我已将具有相应字体的两个字符串附加到字符串生成器中,但这对字符串没有任何作用?有谁知道为什么?

0 投票
1 回答
38 浏览

android - 如何在 SpannableString 中查找子字符串的索引

我有一个可跨字符串,我想在可跨字符串中找到子字符串的索引,我不想将它转换回字符串,因为可跨字符串已经格式化。

0 投票
0 回答
24 浏览

android - 将 TextAppearanceSpan 设置为 api 26 及以下版本的 SpannableStringBuilder 时未应用字体

我正在尝试将 TextAppearanceSpan 设置为 SpannableStringBuilder。它适用于 API 27 及更高版本,但我找不到 api 26 及更低版本的解决方案。这是我正在使用的代码:

0 投票
1 回答
47 浏览

android - Android SpannableStringBuilder IndexOutOfBoundsException

最近,由于 Android 内部抛出 IndexOutOfBoundsException,我们的应用程序发生了很多崩溃。

该问题发生在具有静态布局的屏幕上,该布局由 API 级别 26 -> 31 上的 TextView、复选框和按钮以及所有制造商组成。

我们无法以任何方式重现它,但我们尝试通过设置android:importantForAccessibility="no"TextViews 来“盲目地”修复它。

我很高兴听到任何想法可能是什么问题:)

0 投票
1 回答
31 浏览

android - Android EditText,在打字时改变颜色,样式

我正在制作一个 android 高级编辑器,允许用户在输入时更改文本颜色、样式(粗体、斜体、下划线)。

我可以通过使用 SpannableStringBuilder 来实现样式,但似乎 SpannableStringBuilder 只能应用于现有字符(例如突出显示它们并更改颜色)。

当用户在不基于现有文本的情况下输入新字符时,如何实现相同的效果?

例如,如果我在控件上选择黄色文本颜色和下划线,当用户键入新字符时,这些字符将带下划线并显示为黄色。

0 投票
0 回答
29 浏览

listview - 如何使用“>”制作外部存储文件路径拆分器。使用 SpannableStringBuilder 可点击

我正在使用文件管理器应用程序。正如我们通常看到的那样,在 Android 中打开默认文件管理器会显示主存储路径,由正向箭头“>”分隔。

现在的问题是,当我运行下面的应用程序代码时,路径显示如下 - “/storage/emulated/0/Music/testZip” 而我需要“storage > emulated> Main > Music > testZip” 这种类型的路径拆分和可点击,如中所示->此处的示例

以下是代码部分。运行时权限代码块也被忽略。

activity_main.xml

结果是这样的 - 结果主列表视图数据是

还例如,somoneone 在此路径中单击“音乐”,然后加载的列表视图数据将是“音乐”目录中的存储数据,依此类推,如上图示例中所述。

0 投票
1 回答
13 浏览

android - 在 Android TextView 中用自定义文本超链接 url 动态替换 url

假设您有以下字符串:
“https://google.com to go to google. https://amazon.com to go to Amazon”。

在 TextView 中,您如何将 url 替换为显示“单击此处”(或西班牙语中的“Haz clic aquí”)的链接,并将您带到正确的 url?

请记住,文本是动态的,它是从 API 中检索的,并且无法知道任何给定帖子中是否或有多少链接。

成品应如下所示:
“<a href="https://google.com" rel="nofollow noreferrer">点击此处前往 google。 点击此处前往亚马逊。”</p>