我有ImageSpan一段文字.我注意到的是,周围的文本总是在文本行的底部绘制 - 更准确地说,文本行的大小随着图像的增长而增加,但文本的基线不会向上移动.当图像明显大于文本大小时,效果相当难看.
这是一个示例,大纲显示的界限TextView:

我试图让周围的文本相对于正在显示的图像垂直居中.以下是蓝色文本显示所需位置的相同示例:

以下是我受约束的约束:
我已尝试android:gravity="center_vertical"在TextView上使用该属性,但这没有任何效果.我认为这只是文本行的垂直居中,但在文本行中,文本仍然在底部绘制.
我目前的思路是创建一个自定义跨度,根据行的高度和当前文本大小来移动文本的基线.这个跨度将包含整个文本,我将不得不计算与ImageSpans 的交集,所以我也可以避免移动图像.这听起来相当令人生畏,我希望有人能提出另一种方法.
任何和所有的帮助表示赞赏!
我有一个TextView利用android:lineSpacingMultiplier属性来增加行之间的间距,除了我添加ImageSpan到文本时工作正常.
这会导致图像与行之间的空间底部对齐,而不是文本的基线(如我创建时指定的那样).
我尝试使用该android:lineSpacingExtra属性,取得了一些成功,图像仍然位于低于应有的位置,但没有那么多.有没有另一种方法来增加线之间的空间而不会弄乱垂直对齐ImageSpan?