Android Button实现上图下文字 drawableTop 属性

需求

在这里插入图片描述
需要实现上面是图片,下面是文字的空间,最简单的办法是直接用Button实现,不需要自定义。

实现

xml里实现

在xml布局文件中直接写

//xml
<Button
                android:id="@+id/btn_audio_icon"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@null"
                android:drawableTop="@Drawable/cam_audio"
                android:text="Mark Man"
                android:textColor="@drawable/normal_text_color_selector" />
        </LinearLayout>

android:drawableTop方法就是在文字上部绘制图片

代码里实现

初始化btnAudioIcon(Button)就不讲了,直接调用

Drawable drawable = btnAudioIcon.getResources().getDrawable(R.drawable.cam_audio);
btnAudioIcon.setCompoundDrawablesWithIntrinsicBounds(null, drawable, null, null);
//这方法将原图drawable在文字上绘制

若调用setCompoundDrawables方法,还得设置边距setBounds

Drawable drawable = btnAudioIcon.getResources().getDrawable(R.drawable.cam_audio);
drawable.setBounds(left, top, right, bottom);
btnAudioIcon.setCompoundDrawables(null, drawable, null, null);
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值