安卓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>

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

最后看看实际效果

很简单吧!!!

相关推荐
奔跑吧 android1 小时前
【android bluetooth 协议分析 07】【SDP详解 2】【SDP 初始化】
android·bluetooth·aosp15·bt·gd·sdp_init
梦否4 小时前
Android 代码热度统计(概述)
android
xchenhao7 小时前
基于 Flutter 的开源文本 TTS 朗读器(支持 Windows/macOS/Android)
android·windows·flutter·macos·openai·tts·朗读器
coder_pig8 小时前
跟🤡杰哥一起学Flutter (三十五、玩转Flutter滑动机制📱)
android·flutter·harmonyos
消失的旧时光-19439 小时前
OkHttp SSE 完整总结(最终版)
android·okhttp·okhttp sse
ansondroider10 小时前
OpenCV 4.10.0 移植 - Android
android·人工智能·opencv
hsx66612 小时前
Kotlin return@label到底怎么用
android
itgather14 小时前
安卓设备信息查看器 - 源码编译
android
whysqwhw14 小时前
OkHttp之buildSrc模块分析
android
hsx66614 小时前
从源码角度理解Android事件的传递流程
android