TextView设置图片

本文详细介绍在Android中使用TextView设置图片的两种方法:XML属性和Java代码,并解释如何调整图片与文本间的距离,同时对比了setCompoundDrawablesWithIntrinsicBounds与setCompoundDrawables方法的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前写过一篇关于TextView的文章Android采坑之TextView实际高度比TextSize大

今天再来写一篇关于TextView的文章,介绍TextView设置图片。
TextView设置图片有两种方式:xml、代码
举例:我们要在TextView的右边显示一张图片,可以这样做:

android:drawableRight="@mipmap/down_arrow_2"

也可以这样做:

tv_play_type.setCompoundDrawablesWithIntrinsicBounds(null, null, getResources().getDrawable(R.mipmap.down_arrow_2), null);

那么我们如何设置图片与文本之间的距离呢,同样有两种方式:xml、代码
我们仍然以在TextView的右边显示一张图片举例,可以这样做:

android:drawablePadding="5dp"

也可以这样做:

tv_play_type.setCompoundDrawablePadding(20);

OK,我们再说一下下面两个方法的区别:

setCompoundDrawablesWithIntrinsicBounds(@Nullable Drawable left,
            @Nullable Drawable top, @Nullable Drawable right, @Nullable Drawable bottom)
setCompoundDrawables(@Nullable Drawable left, @Nullable Drawable top,
            @Nullable Drawable right, @Nullable Drawable bottom)

第一个方法,画的drawable的宽高是按drawable固定的宽高,即通过getIntrinsicWidth()与getIntrinsicHeight()获得的。
第二个方法,画的drawable的宽高是按drawable.setBounds()设置的宽高,使用之前必须使用Drawable.setBounds设置Drawable的宽高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值