Android开发之RadioButton位于文字右边的显示方法
老套路看图:
实现思路:
1.将左边的选择按钮隐藏通过android:button="@null"
2.设置右边的图片即可通过android:drawableRight="@drawable/btn_radio_is_check"
看下核心代码:
<?xml version="1.0" encoding="utf-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/rg_layout"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><TextViewandroid:layout_width="match_parent"android:layout_height="44dp"android:gravity="center"android:text="状态选择"android:textColor="@color/black"android:textSize="18sp" /><RadioButtonandroid:id="@+id/rb_turn_on"android:layout_width="match_parent"android:layout_height="64dp"android:background="@color/white"android:button="@null"android:drawableRight="@drawable/btn_radio_is_check"android:paddingLeft="15dp"android:paddingRight="15dp"android:text="turn_on"android:textSize="17sp" /><TextViewandroid:layout_width="match_parent"android:layout_height="0.5dp"android:layout_marginLeft="10dp"android:layout_marginRight="10dp"android:background="#99000000" /><RadioButtonandroid:id="@+id/rb_turn_off"android:layout_width="match_parent"android:layout_height="64dp"android:background="@color/white"android:button="@null"android:drawableRight="@drawable/btn_radio_is_check"android:paddingLeft="15dp"android:paddingRight="15dp"android:text="turn_off"android:textSize="17sp" />
</RadioGroup>
在看下drawable:btn_radio_is_check
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@mipmap/btn_radio_on" android:state_checked="true" /><item android:drawable="@mipmap/btn_radio_off" android:state_checked="false" />
</selector>
在看洁面控制选中的代码:
package com.example.radiobuttonright;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;import androidx.annotation.Nullable;/*** @author xiayiye5* @date 2021.1.13 11:36* 类描述 选择添加动作页面*/
public class SelectActionActivityJava extends Activity implements RadioGroup.OnCheckedChangeListener {private RadioGroup rgLayout;private RadioButton rbTurnOn;private RadioButton rbTurnOff;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_select_action);initView();initData();}public void initView() {rgLayout = findViewById(R.id.rg_layout);rbTurnOn = findViewById(R.id.rb_turn_on);rbTurnOff = findViewById(R.id.rb_turn_off);}public void initData() {String switchStatus = getIntent().getStringExtra("switch");//开关状态回显if ("turn on".equals(switchStatus)) {rbTurnOn.setChecked(true);rbTurnOff.setChecked(false);} else if ("turn off".equals(switchStatus)) {rbTurnOff.setChecked(true);rbTurnOn.setChecked(false);}rgLayout.setOnCheckedChangeListener(this);}@Overridepublic void onCheckedChanged(RadioGroup radioGroup, int i) {Intent intent = new Intent();if (i == R.id.rb_turn_on) {rbTurnOn.setChecked(true);rbTurnOff.setChecked(false);//回调上个页面intent.putExtra("switch_status", "turn on");} else if (i == R.id.rb_turn_off) {rbTurnOn.setChecked(false);rbTurnOff.setChecked(true);intent.putExtra("switch_status", "turn off");}setResult(10086, intent);finish();}
}
完工,很简单!
如果看着乱,可下载源码区分Kotlin和Java版本
源码下载
也可以从GitHub下载
GitHub地址下载
Android开发之RadioButton位于文字右边的显示方法相关推荐
- android注册弹窗,Android开发之PopupWindow创建弹窗、对话框的方法详解
本文实例讲述了Android开发之PopupWindow创建弹窗.对话框的方法.分享给大家供大家参考,具体如下: 简介: PopupWindow 可创建类似对话框风格的窗口 效果: 使用方法: 使用P ...
- Android开发之RadioButton选择改变字体颜色与背景色
先看效果图: 方法一: 公司理财项目里面用到的,当选中radioButton后要改变背景色和自提颜色,试了好几次这么都不行. 于是想到了selecter背景选择器,可是怎么写都不对.终于找到一种成功的 ...
- Android开发之AlertDialog设置左右边距的间接办法
老套路看未设置边距的: 再看下设置边距的 效果非常明显了吧,思路将AlertDialog的背景色设置为透明,然后在xml布局中在外面再套一层空布局,在第二层布局中添加drawable边框就可以了 再看 ...
- Android开发之PCM录音实时播放的实现方法 | 边录音边播放 |PCM录音播放无延迟 | 录音无杂音 | 录音无噪音
先说下录音得开启录音权限 <uses-permission android:name="android.permission.RECORD_AUDIO" /> 然后录音 ...
- Android开发之Glide设置View背景图的方法
先看效果图: 看了下效果还可以,虽然此方法在Glide4.1.2版本已过时但是还可以使用 针对Glide4.0以上版本设置View背景图方法如下:Kotlin版本 package com.xiayiy ...
- Android开发之RecyclerView嵌套ListView自动计算高度的方法
老套路看图:下面是我在我爱我家在职时候做的一个小需求记录下 最外层是个RecylerView子布局里面的房屋描述信息是个listview根据后台返回字段动态显示的高度. 解决思路:可以计算每个list ...
- Android开发之fragment传递参数的两种方法
非常简单一种是通过bundle,另外一种是通过fragment提供的instantiate(过时方法),都是kotlin版本,直接上代码吧: 方法一: //fragment传递参数方法一val fra ...
- Android开发之TextView高级应用
Android开发之TextView高级应用 我们平时使用TextView往往让它作为一个显示文字的容器,但TextView的功能并不局限于此.以下就和大家分享一下TextView的一些使用技巧. A ...
- android之json解析优化,Android开发之json解析
目前正在尝试着写app,发现看懂代码和能写出来差距很大,最关键的是java基础比较的差,因为只会python,java基础只学习了一个礼拜就过了.感觉java写出来的代码不如python简单明了. 上 ...
最新文章
- Cloud Native概念
- 使用WebRTC开发Android Messenger:第2部分
- linux C之access函数
- 拉格朗日乘子法的通俗理解
- 安卓添加滚轮代码_iPhone为什么都不会中病毒?安卓默默退出群聊
- Job System之Hello World
- C++ 字节流与二进制字符串相互转换(一个简单的明文加解密程序)
- HTTP接口测试工具Postman
- Xshell7,Xftp7免费版下载安装
- 什么是透明、匿名、高匿代理?详解!
- ISO 37301:2021《合规管理体系 要求及使用指南》国际标准解读及相关标准
- QCC3020/QCC3040 TWS耳机按键切换EQ,APP切换EQ功能实现
- 改进后的第二版Retropie树莓派掌机(二)
- arcgis构造工具没了_在arcgis中如何调出数据显示工具栏
- android imageview 锯齿,android – 如何在启用消除锯齿的情况下旋转drawable
- 开机找不到硬盘的原因
- 笔记本的麦克风录不了音说不了话
- i春秋百度杯CTF比赛2016年12月场writeup
- jQuery添加单选多选题的代码
- MySQL用户管理-密码修改-用户授权
热门文章
- 机器人是如何群居生活的?
- 中国量子云计算机,量子云平台“中国版”拉开帷幕:国际首个基于核磁共振的量子计算云平台 | Science Bulletin...
- win2008一键配置php mysql_Windows 2008一键安装包配置环境:Windows+IIS+Php+Mysql
- linux nfs系统客户端,Linux系统中挂载共享目录NFS文件系统客户端安装与配置
- java class 生成对象_面向对象编程,你知道Java有哪些创建对象的方式吗?
- linux cron源码下载,LINUX计划任务管理_AT与crontab
- 利用python 对比相似度_头条、油条商标有多像?Python检测发现相似度高达98.4%
- 1.2 位于Shell脚本第一行的#!
- ActiveMq Windows 配置优化
- XVIII Open Cup named after E.V. Pankratiev. GP of Urals