安卓RadioButton设置图片大小

复制代码
RadioButton都不陌生,一般我们都会设置图片在里面,这就涉及一个问题,图片的大小。如果图片过大,效果很不理想。搜了很多方法,都不理想。无奈只能自己研究了

代码如下:

1,一个简单的 RadioButton

复制代码
<RadioButton
    android:id="@+id/rb_home"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:button="@null"
    android:checked="true"
    android:drawablePadding="5dp"
    android:gravity="center"
    android:paddingTop="5dp"
    android:paddingBottom="5dp"
    android:text="首页"
    android:textColor="@xml/radio_button_selector"
    android:textSize="16sp" />

2,radio_button_selector是点击时文字更改颜色的
复制代码
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_checked="true" android:color="@color/selector_rg"></item>
    <item android:state_checked="false" android:color="@color/black"></item>
</selector>

color:

复制代码
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="black">#FF000000</color>
    <color name="white">#FFFFFFFF</color>
    <color name="colorPrimary">#008577</color>
    <color name="colorPrimaryDark">#00574B</color>
    <color name="colorAccent">#D81B60</color>
    <color name="selector_rg">#D81B60</color>
    <color name="colorFirst">#550012</color>
</resources>

3,代码里设置图片的大小:

复制代码
Drawable drawable1=getResources().getDrawable(R.drawable.radiobutton_backgroundone);
drawable1.setBounds(0,0,69,69);
home.setCompoundDrawables(null,drawable1,null,null);

4,radiobutton_backgroundone:
复制代码
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/banner1" android:state_checked="false" />
    <item android:drawable="@drawable/banner4" android:state_checked="true" />
</selector>

可以看到我选用的图片还是很大的。

最后看看实际效果

很简单吧!!!

相关推荐
雨白1 天前
Jetpack Compose Navigation 2.x 详解
android·android jetpack
Android系统攻城狮1 天前
Android内核进阶之获取DMA地址snd_pcm_sgbuf_get_addr:用法实例(九十一)
android·pcm·android内核·音频进阶·pcm硬件参数
清空mega1 天前
Android Studio移动应用基础教程(前言)
android·ide·android studio
2501_937145411 天前
2025IPTV 源码优化版实测:双架构兼容 + 可视化运维
android·源码·源代码管理·机顶盒
zhoutanooi1 天前
安卓bp文件编译学习
android·学习
aramae1 天前
MySQL数据库入门指南
android·数据库·经验分享·笔记·mysql
百锦再1 天前
选择Rust的理由:从内存管理到抛弃抽象
android·java·开发语言·后端·python·rust·go
whatever who cares1 天前
在Java/Android中,List的属性和方法
android·java
油炸小波2 天前
09-微服务原理篇(XXLJOB-幂等-MySQL)
android·mysql·微服务
果子没有六分钟2 天前
setprop debug.hwui.profile visual_bars有什么作用
android