问题标签 [spannablestring]

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 投票
1 回答
894 浏览

android - 自定义 Toast 消息文本颜色

如何显示这样的自定义Toast

在此处输入图像描述

0 投票
1 回答
738 浏览

android - SpannableStringBuilder 性能改进?

我正在编写一个应用程序,该应用程序使用一个使用大量跨度的 SpannableStringBuilder 不断更新 TextView。基准测试显示,不出所料,setText() 和 drawText() 都是大阻塞器,而 SpannableStringInternal.getSpans() 的独占 CPU 时间最高。

有没有办法重用相同的跨度,所以我不必用多个相同的跨度堵塞我的 SpannableString?还有其他方法可以提高 SpannableString 的性能吗?

0 投票
1 回答
2632 浏览

android - 用于可跨字符串的 Android 自定义组合跨度

我如何创建将不同类型的跨度组合在一起的自定义跨度,例如 TypefaceSpan + RelativeSizeSpan。我想创建像“脚注”或“Header2”这样会改变文本字体和大小的逻辑跨度。

0 投票
5 回答
11427 浏览

android - 将 Spannable 与 String.format() 结合使用

假设您有以下字符串:

假设您想以这个字符串结尾,但也有一个特定的Span集合,用于替换任何单词String.format

例如,我们还想做以下事情:

是否有一种可靠的方法来了解 和 的起始old索引tan

请注意,仅搜索 'old' 会返回 'cold' 中的 'old',因此这是行不通的。

我猜,什么%[0-9]$s起作用的是预先搜索,并计算偏移量以解释String.format. 不过,这似乎令人头疼,我怀疑可能有一种类似的方法可以提供String.format更多有关其格式细节的信息。嗯,有吗?

0 投票
2 回答
4212 浏览

android - 在 android 中处理 SpannableStringBuilder 图像

我正在开发一个应用程序,其中选择的联系人被添加到EditText一个关闭标记图像,当我点击那个关闭标记图像时,联系人应该被删除。我已经完成了显示关闭标记图像的代码,但我不知道如何处理那些关闭标记图像。请建议我如何。

在此处输入图像描述

我的代码:

0 投票
0 回答
35 浏览

java - 使用 SpannableString 在 PagerTabStrip 中的标题上自定义字体

我想为我的PagerTabStrip. 我想用一个SpannableString. 如同:

我的标题在一个数组中,并getPageTitle(int position)在简单的代码中使用:

所以我的问题是:如何使用带有 TypfaceSpan 的 SpannableString 为 PagerTabStrip 中的标题数组设置自定义字体?

0 投票
2 回答
1515 浏览

android - 图片在可扩展的edittext中显示两次

我有一个审查系统,允许通过 imgur 添加文本和上传图片。当我显示评论时,图片显示两次,我不明白为什么。

这是代码的一部分:

我还将私有类 GetImage (在同一个文件中)

我的列表布局 (list_item.xml )

我的图片作为可跨越的内容插入到 textview

0 投票
1 回答
1395 浏览

android - 文本视图中每一行的不同颜色

我在尝试根据第一个字符在每行上设置不同的颜色时遇到问题。这是我目前拥有的。文本视图中没有任何内容。

0 投票
1 回答
1036 浏览

android - Android 创建不换行的 Spannable

我在 Android 上布局文本时遇到以下问题。我基本上是在尝试以最小间距设置两行文本,并且每行的样式都应该不同。我已经有了很好的工作解决方案,两个单行 TextView 一个放在另一个下方,但是在某些设备上我仍然收到一些裁剪的文本..

所以我决定只使用一个 TextView 来代替使用 Spannables,这通常在所有情况下都是一个更好的解决方案。

这意味着我需要从 TextView -> 中删除单行属性,以便能够在开始第二个 Spannable 之前换行。但是当第一行显示的文本实际上比它长时存在问题。 .TextView 自动包装,这是一种不受欢迎的行为。您可以在下面看到几个屏幕截图,您应该更好地说明我正在努力实现的目标以及我现在的位置。

第一张图片显示了带有 spannables 的新布局,您也可以在那里看到包裹线。第二个图像是布局的初始版本,两个文本视图在线性布局中垂直布局。

还有一个问题,它实际上是一个 appwidget,这意味着我无法直接访问该 textview 实例。我一直在考虑完全放弃文本视图,而是只使用 ImageView 并在画布上手动渲染所有内容。这对我来说似乎有点矫枉过正,所以我正在寻找更好的解决方案。不幸的是,我有点缺乏想法和知识:)

谢谢

这是带有 spannables 的新布局,但是有不需要的裁剪 这是旧布局,​​您可以看到彼此下方有两个文本视图

0 投票
4 回答
1010 浏览

android - ListView 的 convertView 中的链接跨度丢失

为什么ListView滚动时链接会丢失?从调试中可以清楚地看出,跨度不会第二次添加TextViewconvertView.

这是一段从适配器调用的代码getView

MyCustomUri.addHashtagSpans()创建一个SpannableStringwith MyCustomSpanwith extends URLSpan

ListView问题是当我在链接中上下滚动时丢失了。而当屏幕第一次打开时,它设置正确。

现在我通过禁用convertView:( 的重用做了一个肮脏的修复,有什么想法可以更好地解决这个问题吗?