0
4

1 回答 1

0

我找到了答案。。

为什么 android ImageSpan 会显示我的图片两次(当 setBounds 超过某个魔术宽度时)类似?

这是由于在 setBounds 中设置的高度大于在活动早期创建可绘制对象的位图的高度。当这种情况发生时,似乎会发生两件事..

首先,如果尺寸只是略微(一旦我开始工作,我没有对它进行广泛测试,所以我不确定确切的数字)超过位图的大小,那么一个大的空白空间被添加到跨度中,这个空白空间是与插入的位图大小相同。

其次,将 Drawable 的一个额外副本添加到 span 中,就在空白区域的正下方。

分辨率比较简单。确保在创建 Drawable 并调用 setBounds 之前,将用于创建 Drawable 的 Bitmap 设置为预期的最终大小。

这可能不适用于所有情况,但对我有用,希望对某人有所帮助。

于 2015-07-01T09:29:07.043 回答