问题标签 [imagespan]

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 回答
49673 浏览

android - SpannableString 与图像示例

我正在寻找如何使用 ImageSpan 构建和显示 Android SpannableString 的示例。类似笑脸的内联显示。

非常感谢。

0 投票
11 回答
29684 浏览

android - 围绕 ImageSpan 中心垂直对齐文本

我有ImageSpan一段文字的里面。我注意到的是,周围的文本总是绘制在文本行的底部——更准确地说,文本行的大小随着图像的增长而增长,但文本的基线不会向上移动。当图像明显大于文本大小时,效果相当难看。

这是一个示例,大纲显示了 的边界TextView在此处输入图像描述

我试图让周围的文本相对于正在显示的图像垂直居中。这是相同的示例,带有显示所需位置的蓝色文本:

在此处输入图像描述

以下是我受约束的约束:

  • 我不能使用复合绘图。图像必须能够在单词之间显示。
  • 根据内容,文本可能是多行的。我无法控制这一点。
  • 我的图像比周围的文字大,我无法减小它们的大小。虽然上面的示例图像大于实际图像(以演示当前行为),但实际图像仍然足够大,这个问题很明显。

我尝试android:gravity="center_vertical"在 TextView 上使用该属性,但这没有任何效果。我相信这只是将文本行垂直居中,但在文本行内,文本仍绘制在底部。

我目前的思路是创建一个自定义跨度,根据行高和当前文本大小移动文本的基线。这个跨度将包含整个文本,我必须计算与ImageSpans 的交集,这样我也可以避免移动图像。这听起来相当令人生畏,我希望有人可以提出另一种方法。

任何和所有的帮助表示赞赏!

0 投票
0 回答
924 浏览

android - 如何在 Spannable 字符串中将 TextView 对齐为 ImageSpan 的垂直中心

大家好,我的 textview 有一点问题,我在上面使用了 Spannable String,完全位于 TextView 的中间,但其余的文本似乎在 TextView 的底线,所以如果我们说 |-| 是图像跨度, _是文本的其余部分,它是这样的:

|-| ____

我需要的是这样的东西:

|-|--

这是我的代码:

如果您知道解决方案,请帮我解决它,我已经尝试了所有重力但它太奇怪了为什么图像在中间而其余的文本在底部!

0 投票
3 回答
20890 浏览

android - 有什么方法可以在 TextView 中插入 ImageSpan 而不会破坏文本?

似乎为了在 Android 中将 ImageSpan 添加到 Spannable,我实际上必须用 Image 替换一些文本。例如:

这将用图像替换“imageplace”。因为我正在处理复杂的多跨度文本和重复,所以在我想要android图标的每个地方插入无意义的文本有点让人头疼。但是看起来如果跨度的开始和结束相同,则不会包含图像。有没有办法解决?

0 投票
0 回答
370 浏览

android - Android 5.0:TextView 中的 setSpan 问题

我正在尝试在 Android 上的 TextView 中实现 WordCap,这是我的代码:

结果:

在我升级到 Android 5.0 (Lollipop) 之前它工作正常。可绘制的 setBound 不再起作用。它看起来像这样:

我仍然找不到解决此问题的解决方案。请帮忙!非常感谢。

0 投票
2 回答
1131 浏览

android - 不要在 Android 中通过 ImageSpan 在 TextView 中显示图像

我想在TextView中将图像显示为笑脸。我有一个获取字符串并将 ImageSpans 添加到 CharSequence 的方法,该方法将文本表情符号(例如:-)替换为图形版本。 在此处输入图像描述

然后我在我的适配器上使用它:

此外,这里定义了 TextView 元素:

不幸的是,没有在 TextView 中显示图像,只显示一个主字符串。我应该怎么做才能解决它?

0 投票
2 回答
1606 浏览

android - android imagespan 图像在单行文本视图中被剪切错误

我使用 ImageSpan 在 textview 中显示图像。TextView 是带有结束椭圆大小的单线。当图像位于 textview 的末尾并且没有足够的空间时。我认为它应该显示“...”。但它显示 Image 的一部分。图像被错误剪辑。

在此处输入图像描述

xml:

编码:

0 投票
2 回答
1165 浏览

android - RecyclerView 内带有 ImageSpan 的 TextView = 错误的布局

我在 TextViews 中插入 ImageSpan,它是 RecyclerView 的一部分。大多数情况下它工作得很好,但是当你上下滚动时,有时 TextView 的高度是错误的,没有明显的原因 - 垂直空白太多。

在特定设备上的此布局中,具有 1 行文本的 TextView 的正确高度为 48,错误高度为 80(我从 HierarchyViewer 获得这些值)。有趣的是,带有 1 行文本(包括 ImageSpan)的 TextView 的正确高度是 80。所以似乎正在发生的事情是,当 TextView 被 RecyclerView 回收时,它有时会保持代表其旧内容的高度(其中包括图像跨度)。

此屏幕截图显示“Anore”和“Halal blahs”TextView 的高度为 80 像素,这是错误的。“Hello” TextView 在 48 像素处是正确的。

错误高度 (80)

在调查这个问题时,我打开了 DDMS 并运行了“转储 UI 层次结构”,发生了一些有趣的事情:TextView 高度在运行中自行纠正:

正确高度 (48)

这是非常令人信服的证据,表明问题是更新文本后 TextView 没有正确布局,所以我尝试了各种方法在 TextView 及其父视图上调用 forceLayout() 和 invalidate() ,但没有帮助。

我尝试用 ListView 替换 RecyclerView,没有运气。我尝试让所有 ImageSpan 使用相同的可绘制对象,但没有运气。

我运行了 HierarchyViewer,但它并没有像 UI Automator 那样“修复”布局。甚至当我按下“无效布局”和“请求布局”按钮时也没有。

我没有做任何花哨的设置 ImageSpans:

这是每个列表项布局的相关部分:

我尝试使 TextView 父级 (LinearLayout) 上的布局无效并强制布局,但它什么也没做。

我尝试将布局编辑为字面意思:

..问题仍然存在。这绝对是 TextView 本身的错。

0 投票
1 回答
393 浏览

android - SpannableString 在文本下带有点

我正在尝试实现这样的目标:

有一个最大长度为 2 且最小长度为 1 的字符串。我想在文本下方创建一个点。像这样http://imgur.com/7LKWpVR

这可以通过 textview 中的 ImageSpan 来实现吗?

0 投票
1 回答
273 浏览

android - 在 SpannableStringBuilder 和 DynamicLayout 中修改 Drawable

我试图在 a 中隐藏一个笑脸SpannableStringBuilder(在 a 中使用DynamicLayout)。一开始我试过

它没有用。我也试过

也没有用。

下一个代码确实有效,但它没有保留可绘制对象的大小,因此笑脸周围的文本开始“跳跃”,这是不正确的。

潜在地,我可以重新绘制可绘制对象,但这是一项昂贵的操作。为什么drawable不更新?我错过了什么?

提前致谢。