技术标签: Android-自定义View
代码贴在了最下方。OnCheckedChangeListener已经收到监听,并且为checked = true,但是RadioButton的状态是未选中的状态。
最后发现是 android:drawableStart="@drawable/sel_detail_table_grid"这里出了问题。
去除这两句代码,观察原始图标状态,是正常更换的。
android:button="@null"
android:drawableStart="@drawable/sel_detail_table_grid"
做项目的总要遇到自定义RadioButton样式的需求,我这里是使用android:button="@null"把原始按钮去掉,然后添加了一个自定义图标。明明设置了sel标签选中状态,自适应图标,点击时是正常的,但是首次进入设置的默认选中却只是触发了事件,没有自动更换图标。
android:drawableStart="@drawable/sel_detail_table_grid"
替换成
android:background="@drawable/sel_detail_table_grid"
不知道
tableRadioGroup.setOnCheckedChangeListener((group, checkedId) -> showTableFragment(checkedId));
tableRadioGroup.check(R.id.grid_rb);
<RadioGroup
android:id="@+id/table_rg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|center_vertical"
android:orientation="horizontal">
<RadioButton
android:id="@+id/grid_rb"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:button="@null"
android:drawableStart="@drawable/sel_detail_table_grid" />
<RadioButton
android:id="@+id/list_rb"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableStart="@drawable/sel_detail_table_list" />
</RadioGroup>
sel_detail_table_grid.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_detail_table_grid" android:state_checked="true" />
<item android:drawable="@drawable/ic_detail_table_grid_" android:state_checked="false" />
</selector>
题外话:RadioGroup的clearCheck方法,可设置RadioButton为初始的都不选中状态。
Spring boot引入JSON、JSON字符串与JAVA对象的转换开发工具:IDEA创建springboot项目,引入以下依赖包: <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</a..._将字符串转为对象 springboot
Unity — 一款漂亮使用的UGUI插件!一:效果图二:太多效果图,自己下载看吧,总有你要的 -_-三:加油!至明天的自己! 本文提供详细教程记录遇到的难点并帮助同行的朋友们坚持以最简单的方法传授和把更好的阅读体验带给你们! 一:效果图二:太多效果图,自己下载看吧,总有你要的 -_- 网盘资源一键下载 (点点关注,不迷路!谢谢支持!!)提取码:2sez三:加油!至明天的自己! 拥有自己的服务器让开发工作不再难 My_u3d ugui 炫酷
0x00 安装依赖安装git以下载OpenWrt源码。安装编译工具以进行交叉编译:sudo apt-get updatesudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsl...
collections中有很多模块,包括tuple这个是最基础的数据结构,而一些常用模块比如namedtuple、defaultdict等能让程序更加简洁明了,易读效率高,了解一下。拆包:tuple=("周",24,175) # 换成List也可以拆包name, age, height =tuple name,*other =tupleprint(name,other) # 输出周..._from _collections import deque, defaultdict
由于某些特殊原因,我们可能需要将SVN资源库中的某个文件回滚到以前的某个历史版本(准确地说,这不是"回滚","回滚"操作会导致指定版本到当前版本的变更记录丢失,我们这里只是将当前文件内容还原恢复为以前的某个版本)。右键点击指定的文件,在弹出的关联菜单中点击【Team】->【Show In History】。如下图所示,此时会显示当前文件的所有历史版本列表,右键点击指定的版本,在弹出的关联菜
第一部分:(参考百度百科) 一、STL简介STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。
from __future__ import divisionimport sysimport mathimport randomimport timefrom collections import dequefrom pyglet import imagefrom pyglet.gl import *from pyglet.graphics import TextureGroupfrom pyglet.window import key, mouseTICKS_PER_SEC =
前言今天给大家分享一个比较基础也是非常常见的 Java 面试题:“深拷贝和浅拷贝区别了解吗?什么是引用拷贝?”。另外,本文也已经放到了我的网站:javaguide.cn/。关于深拷贝和浅拷贝区别,我这里先给结论:浅拷贝:浅拷贝会在堆上创建一个新的对象(区别于引用拷贝的一点),不过,如果原对象内部的属性是引用类型的话,浅拷贝会直接复制内部对象的引用地址,也就是说拷贝对象和原对象共用同一个内部对象。 深拷贝 :深拷贝会完全复制整个对象,包括这个对象所包含的内部对象。上面的结论没有完全理解的._java 克隆 深拷贝 浅拷贝面试题
Dubbo面试题及答案【最新版】Dubbo面试题大全(2021版),发现网上很多Dubbo面试题及答案整理都没有答案,所以花了很长时间搜集,本套Dubbo面试题大全如果不背 Dubbo面试题的答案,肯定面试会挂!这套Dubbo面试题大全,希望对大家有帮助哈~博主已将以下这些面试题整理成了一个Dubbo面试手册,是PDF版的1、说说核心的配置有哪些?2、Dubbo集群提供了哪些负载均衡策略?**1、**Random LoadBalance: 随机选取提供者策略,有利于动态调整提供者权重。截面碰撞_dubbo面试 枫叶云笔记
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=65998#problem/A#include #include #include #include #include #include #include using namespace std;const int maxnode = 100010;cons
近日,鹿晗工作室视频曝光,视频讲述鹿晗对坐飞机感到恐惧,而好友们纷纷想办法帮他克服恐飞,邓超陈赫灌了他一晚上酒,黄子韬陪着从车里一直送到的飞机口,吴亦凡也在劝他,该视频在最后打出字幕对好友们表示感谢。此前,鹿晗曾遭好友老高爆料,原本他们计划从北京飞法兰克福,到了机场鹿晗太紧张直接掉头走了,死活拉不上飞机。老高无奈说:“你恨我就恨我吧,我准备给你拽上去了。但拉不上去,第一次没飞成……太不容易了!”..._鹿晗不敢坐飞机陈赫是真的吗
js实现 *{ margin: 0px; padding: 0px; }