Android动态设置drawableRight

2023-03-30 15:09:20 浏览数 (2)

笔记: 安卓在代码中动态设置TextView的drawableLeft、drawableRight、drawableTop、drawableBottom, 在xml中设置的方法为:android:drawableLeft=“@drawable/xxxxx”; 但是在代码中并没有相关的setDrawableLeft等方法 api为我们提供了一个setCompoundDrawables(left,top,right,bottom);方法,供开发人员设置相应的边界图片。

代码语言:javascript复制
    Drawable rightDrawable = getResources().getDrawable(R.drawable.icon);
     
    //调用setCompoundDrawables时,必须调用Drawable.setBounds()方法,否则图片不显示
     
    rightDrawable.setBounds(0, 0, rightDrawable.getMinimumWidth(), rightDrawable.getMinimumHeight());  // left, top, right, bottom
    tvVersionStatus.setCompoundDrawables(null, null, rightDrawable, null);  // left, top, right, bottom
代码语言:javascript复制
    <TextView android:id="@ id/tv_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawablePadding="10dp"
        android:drawableRight="@drawable/icon"
        android:text="文本信息"
        android:textColor="#313131"
        android:textSize="20sp" />

0 人点赞