RadioButton的图片大小设置

在RadioButton使用中,可能需要放入图片,但是XML中无法直接设置图片的大小。

    android:gravity="center"
    android:id="@+id/rb_first"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:button="@null"
    android:drawableTop="@drawable/selector_ic_first"
    android:text="首页"/>
    android:gravity="center"
    android:id="@+id/rb_search"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:button="@null"
    android:drawableTop="@drawable/selector_ic_search"
    android:text="查询"/>
    android:gravity="center"
    android:id="@+id/rb_me"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:button="@null"
    android:drawableTop="@drawable/selector_ic_people"
    android:text="我的"/>
效果图:可以发现图片太大了

RadioButton的图片大小设置_第1张图片

如何设置图片大小:

Java代码实现:

初始化使用ButteerKnife插件

@BindView(R.id.rb_first)
RadioButton rbFirst;
@BindView(R.id.rb_search)
RadioButton rbSearch;
@BindView(R.id.rb_me)
RadioButton rbMe;

private void changeImageSize() {
    //定义底部标签图片大小
    Drawable drawableFirst = getResources().getDrawable(R.drawable.selector_ic_first);
    drawableFirst.setBounds(0, 0, 69, 69);//第一0是距左右边距离,第二0是距上下边距离,第三69长度,第四宽度
    rbFirst.setCompoundDrawables(null, drawableFirst, null, null);//只放上面

    Drawable drawableSearch = getResources().getDrawable(R.drawable.selector_ic_search);
    drawableSearch.setBounds(0, 0, 69, 69);//第一0是距左右边距离,第二0是距上下边距离,第三69长度,第四宽度
    rbSearch.setCompoundDrawables(null, drawableSearch, null, null);//只放上面

    Drawable drawableMe = getResources().getDrawable(R.drawable.selector_ic_people);
    drawableMe.setBounds(0, 0, 69, 69);//第一0是距左右边距离,第二0是距上下边距离,第三69长度,第四宽度
    rbMe.setCompoundDrawables(null, drawableMe, null, null);//只放上面
}
效果图:设置大小后,图片变小了

RadioButton的图片大小设置_第2张图片




你可能感兴趣的:(Android开发)