CompoundButton

具有两种状态的按钮,选中和未选中。当按钮被按下或点击时,状态会自动改变。

这是一个抽象类,目前有的子类有 复选框,单选按钮,开关,切换按钮。

复选框

复选框是一种特定类型的双状态按钮,可以选中或取消选中。

单选按钮

单选按钮是两个状态的按钮,可以选中也可以取消选中。

转变

Switch 是一个双态切换开关小部件,可以在两个选项之间进行选择。

切换按钮

将选中/未选中状态显示为带有“指示灯”指示器的按钮,默认情况下带有文本“ON”或“OFF”。

CompoundButton的接口

interface

CompoundButton.OnCheckedChangeListener

当复合按钮的选中状态改变时调用回调的接口定义。

CompoundButton的XML 属性

android:button

Drawable 用于按钮图形(例如,复选框和单选按钮)。

android:buttonTint

应用于按钮图形的色调。

android:buttonTintMode

用于应用按钮图形色调的混合模式。

CompoundButton的公共方法

void

autofill(AutofillValue value)

自动填充此视图的内容value。

void

drawableHotspotChanged(float x, float y)

每当视图热点发生变化并需要传播到由视图管理的可绘制对象或子视图时,就会调用此函数。

CharSequence

getAccessibilityClassName()

返回此对象的类名以用于可访问性目的。

int

getAutofillType()

描述此视图的自动填充类型,因此 AutofillService可以AutofillValue 在自动填充视图时创建正确的类型。

AutofillValue

getAutofillValue()

获取TextView的当前自动填充文本。

Drawable

getButtonDrawable()

BlendMode

getButtonTintBlendMode()

ColorStateList

getButtonTintList()

PorterDuff.Mode

getButtonTintMode()

int

getCompoundPaddingLeft()

返回视图的左填充,加上左 Drawable 的空间(如果有)。

int

getCompoundPaddingRight()

返回视图的右填充,加上右 Drawable 的空间(如果有)。

boolean

isChecked()

void

jumpDrawablesToCurrentState()

调用Drawable.jumpToCurrentState() 与此视图关联的所有 Drawable 对象。

void

onRestoreInstanceState(Parcelable state)

钩子允许视图重新应用先前由onSaveInstanceState().

Parcelable

onSaveInstanceState()

钩子允许视图生成其内部状态的表示,以后可以使用该表示创建具有相同状态的新实例。

boolean

performClick()

调用此视图的 OnClickListener(如果已定义)。

void

setButtonDrawable(int resId)

给定资源标识符,将可绘制对象设置为复合按钮图像。

void

setButtonDrawable(Drawable drawable)

将 drawable 设置为复合按钮图像。

void

setButtonIcon(Icon icon)

将此 CompoundButton 的按钮设置为指定的 Icon。

void

setButtonTintBlendMode(BlendMode tintMode)

指定用于将setButtonTintList(android.content.res.ColorStateList)}指定的色调应用于可绘制按钮的混合模式 。

void

setButtonTintList(ColorStateList tint)

将色调应用于可绘制的按钮。

void

setButtonTintMode(PorterDuff.Mode tintMode)

指定用于将setButtonTintList(android.content.res.ColorStateList)}指定的色调应用于可绘制按钮的混合模式 。

void

setChecked(boolean checked)

更改此按钮的选中状态。

void

setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener listener)

注册一个回调,当这个按钮的选中状态改变时调用。

void

setStateDescription(CharSequence stateDescription)

当实例或子类设置状态描述时调用此函数。

void

toggle()

将视图的选中状态更改为与其当前状态相反的状态

CompoundButton的受保护的方法

void

drawableStateChanged()

每当视图的状态发生变化以影响显示的可绘制对象的状态时,就会调用此函数。

int[]

onCreateDrawableState(int extraSpace)

Drawable为此视图生成新状态。

void

onDraw(Canvas canvas)

实现这个来做你的绘图。

boolean

verifyDrawable(Drawable who)

如果您的视图子类正在显示它自己的 Drawable 对象,它应该覆盖此函数并为它正在显示的任何 Drawable 返回 true。

CompoundButton相关推荐

  1. 直接继承CompoundButton接收不到ACTION_UP的原因

    前提:由于部门调整,所以我的工作职责变成 搭建一个动态特效组件库来供项目部门使用,任务比较庞大.hoho,慢慢来. 任务一:一个带动态特效的Switch. 任务分解:由于需求特效不能直接继承Switc ...

  2. 解决方法 android.view.AbsSavedState$1 cannot be cast to android.widget.CompoundButton$SavedState

    第一次写博客 就是为了纪念这个困扰我一晚上的纠结问题    其实网上不少类似的问题  但都能看出个大概 什么LinearLayout转换 什么List转换出错  唯有这个很摸不着头脑 这里写出我的问题 ...

  3. Android开发 CompoundButton CheckBox Switch RadioButton

    1.CompoundButton 抽象了各种复合按钮的一个抽象类,继承自Button类. 2.CheckBox 复选框 有默认的复选框,设置宽高文字内容就可以直接用. 也可以在drawable下新建一 ...

  4. Android RadioButton 修改选择框

    效果图 是否被选中打印效果图 RadioButon  是单选框 ,选中之后再次点击无法取消,这样呢我们可以配合RadioGroup 使用,选择其他的RadioButton 这样的话刚才的的那个就取消了 ...

  5. Android CheckBox 修改选择框

    效果图 是否被选中打印效果图图 CheckBox  是多选框 ,选中之后可以再次点击取消操作. 在使用的时候注意padding 是相对于字体来的不是相对选择框 下面第一个位置调整了 使用了paddin ...

  6. Android switchCompat. 和 Switch

    今天礼拜日,回顾知识点 看到了switchCompat 这里记录下它的简单使用 switchCompat  使用需要导入v7包,一般这个创建项目的时候默认的都用,也就不用关心了 使用呢也很简单 布局 ...

  7. Android UI 统一修改Button控件的样式,以及其它系统控件的默认样式

    先介绍下修改原理:首先打开位于android.widget包下面的Button.java文件,这里有一句关键的代码如下: public Button(Context context, Attribut ...

  8. java 3gpp转mp3_Android音频以及音频播放器开发实例

    Android 系统支持三种不同来源的音频播放: 1)本地资源 存储在应用程序中的资源,例如存储在 RAW 文件夹下的媒体文件,只能被当前应用程序访问. 2)外部资源 存储在文件系统中的标准媒体文件, ...

  9. android列表实现置顶,Android利用RecyclerView实现全选、置顶和拖拽功能示例

    Android利用RecyclerView实现全选.置顶和拖拽功能示例 发布时间:2020-08-23 16:26:42 来源:脚本之家 阅读:159 作者:爱开发 前言 今天给大家分享是如何在Rec ...

  10. android用户界面设计:基本按钮,Android用戶界面設計:基本按鈕

    本文向你展示了在你的android應用程序中創建一個簡單的Button或ImageButton控件的步驟.首先,你會學到如何向你的布局文件中添加按鈕控件.然後你會學習如何用兩種方法處理用戶對按鈕的點擊 ...

最新文章

  1. java字面量 方法区_(一)java的内存模型
  2. Android初级第一讲---Android开发环境的配置
  3. Exchange Server2010系列之十一:部署CAS+HT角色高可用性
  4. 第一部分Calendar介绍
  5. Linux网络编程:原始套接字的魔力【续】
  6. eclipemaven本地仓库依赖_【Maven】解决本地jar依赖
  7. Excel 批量处理行高(图文教程) - Excel篇
  8. 翻译:重载解决和Null
  9. js将时间转换为时间戳
  10. 牛客网 - 机器人走方格 (动态规划)
  11. 十大PHP程序员必备工具
  12. jmultiselect2side.php改为asp,jquery.multiselect2side使用以及文件下载
  13. CAD坐标怎么输入?CAD坐标标注教程
  14. 博信医药系统连接不到服务器,博信医药管理系统
  15. Linux gerp 命令使用方法
  16. 第4章 设计目标与原则
  17. 线性离散系统的分析与校正
  18. discuz服务器500错误信息,discuz论坛程序突然出现http500错误解决方案
  19. 桌面级群控机器人CoCube探索-2022-
  20. 法兰克oitf操作_FANUC Oi-B数控系统操作面板说明

热门文章

  1. 基于html房屋管理系统,一种Web界面的互联网房屋销售管理系统设计的制作方法...
  2. SAS 入门(二)实战篇
  3. 小米cc9出厂线刷包_小米cc9 pro刷机教程,线刷升级更新官方系统包
  4. matlab函数sinh,matlab sinh 使用方法
  5. 智能门锁主流品牌有哪些?选购门锁时要注重产品的哪些特性?
  6. 计算机四级软考数据库系统工程师教材
  7. 小波与小波包、小波包分解与信号重构、小波包能量特征提取 暨 小波包分解后实现按频率大小分布重新排列(Matlab 程序详解)
  8. 从神话诗歌到奇幻科学的人类探索史·《月亮》·总篇(有配图)
  9. 如何在远程会议的时候静音吃薯片?微软团队用AI去除视频噪声
  10. RDKit|使用MolDraw2DCairo模块绘制分子