使用ImageSpan的时候,并且使用了lineSpacingExtra来设置行间距后,会出现图片下沉,即图片和文字不再一条线上,这时候就可以通过FontMetrics来设置改变.
如,评论中插入 图像,将span上移即可
public class TestSpan extends ImageSpan { public TestSpan (Bitmap drawable) { super(drawable); } @Override public void draw(@NonNull Canvas canvas, CharSequence text, int start, int end, float x, int top, int y, int bottom, @NonNull Paint paint) { //get image in obj Drawable b = getDrawable(); // handle pic FontMetrics.. Paint.FontMetricsInt fm = paint.getFontMetricsInt(); int picY = (y + fm.descent + y + fm.ascent) / 2 - b.getBounds().bottom / 2; canvas.save(); canvas.translate(x, picY); b.draw(canvas); canvas.restore(); } }
SpanbleString 图片下沉解决办法
最新推荐文章于 2020-03-31 09:59:06 发布