Android TextView图文混排,图片和文字居中对齐

这篇博客介绍了如何在Android的TextView中实现图文混排,并让图片和文字居中对齐。通常的SpannableString只能实现底部或基线对齐,但通过自定义ImageSpan并重写onDraw()方法,可以达到居中效果,使得第二行文本能够顶头对齐,提高UI美观度。
摘要由CSDN通过智能技术生成

TextView用来显示文本是最普通的用法了,有些情况需要我们再文本中显示图片,比如显示表情,下边来说说处理方法.

1.下图是项目中一个UI需求
这里写图片描述

如图需要在文本的前边显示新上标签,开始的处理方法是用了两个空间分别显示标签和文本,但是有个问题是第二行的文本不能顶头对齐,很不美观.

我们可以通过图文混排来解决上述问题,通过SpannableString来实现,在相应位置使用ImageSpan替换即可,但是imageSpan只提供了两种对齐方式,如下所示:
/**
底部对齐
*/
public static final int ALIGN_BOTTOM = 0;

/**
基线对齐
*/
public static final int ALIGN_BASELINE = 1;

但是通常UI设计肯定是图片和文字居中对齐
这里需要扩展继承ImageSpan,重写它的onDraw()方法

public class CenterAlignImageSpan 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值