组合按钮基础类(多选/单选)操作实例讲解

作者:创世魂

 

● 辅助说明

本类位于“安卓基本类”模块中,必须添加此模块才能使用。

 

● 准备工作

 

界面如下图:

打开窗口设计器,拖放两个“按钮”,一个“单选框”

分别设置标题“按钮1、按钮2”“单选框1”


保存布局后,右键“按钮”选择“添加事件接收方法”

然后去添加“按钮_被单击”事件。

最终达到如图所示的效果。

 

 

一、组合按钮基础类

 

● 本类说明

 

本类是一个“基础类”,并不能直接使用。

本类需要通过“单选框”“多选框”等组件调用本类中的方法。

此处主要讲解“单选框”调用。

可通过“窗口组件”的基础类中的“背景色”“背景图”等属性调整当前单选框的背景色和背景图。

可通过“文本框”组件中的“内容(读写)”属性,调整文本框组件的标题。

 

 

● 模拟单击

 

帮助文档如下图:

顾名思义,本方法就是用来模拟一个单机,并且会发送“单选框被单击”事件。

 

代码编写(1):

右键点击单选框,选择“添加事件接收方法”,添加“单选框被单击”事件。

 

代码编写(2):

“按钮被单击”事件下,指定“来源对象”“按钮1”

然后调用本方法即可。

随后在添加的被单击事件下,弹出一个提示框做演示。

注意:单选框是基于按钮的,所有基于按钮的都不需要调用“支持单击”属性。

 

运行效果如下图(GIF):

可以看到“按钮1”被点击后,单选框自动选中,并且触发了“单选框_被单击”事件。

 

 

● 置按钮背景

 

帮助文档如下图:

顾名思义,设置当前“单选框”的按钮图片。

可通过“载入可绘制资源”方法将“可绘制资源”转换为“可绘制对象类”

 

代码编写如下图:

定义“可绘制资源”变量,导入一张图片。

然后将“载入可绘制资源(图片)”放入本方法的参数中即可。

 

运行效果如下图(GIF):

可以看到“按钮1”被点击后,单选框文本前的按钮变成了导入的图片。

 

 

● 翻转选中状态

 

帮助文档如下图:

顾名思义,本方法的作用,可以用来翻转当前按钮的选择状态。

如果是“单选框”调用,那么只能从“未选中”状态翻转为“选中状态”

“多选框”可随意的翻转选中状态,不受影响。

 

代码编写如下图:

直接在“按钮1”被点击后调用本方法即可。

 

运行效果如下图(GIF):

可以看到“按钮1”被点击后,单选框立刻变成选中状态。

但是选中之后,并不能继续翻转选中状态。

如果想要调整为“未选中”状态,需要使用“选中”属性。

 

 

● 选中(读写)

 

“选中(写)”帮助文档:

顾名思义,通过本属性可设置当前按钮是否处于选中状态。

属性值为真表示选中,否则相反。

 

“选中(读)”帮助文档:

本读属性的作用就是来读取当前按钮的选择状态。

返回真表示选中,否则相反。

 

代码编写如下图:

“按钮1”被点击后调用“选中”写属性,属性值填写“取反(单选框1.选中)”

“取反”的作用为,翻转逻辑值。

如果当前逻辑值为真,则返回假,否则返回真。

此处用在这里,可以实现“翻转选中状态”

“按钮2”被点击后,判断当前“选中”读属性的返回值,然后弹出对应提示即可。

 

运行结果如下图(GIF):

可以看到“按钮1”被点击,会翻转当前选中状态。

并且“选中”后也可以进行翻转。

“按钮2”被点击后,当前的选中状态也都成功读取。

 

 

● 按钮背景(写)

 

帮助文档如下图:

本写属性和“置按钮背景”一样,都是用来设置当前按钮的背景。

 

代码编写如下图:

定义“可绘制资源”变量,导入一张图片。

然后调用本属性,将“背景”写入属性值即可。

 

运行结果如下图(GIF):

可以看到“按钮1”被单击后,单选框的图片发生了变化。

可通过修改“按钮背景”的方式,来自定义选择按钮。

 

 

● 选中状态被改变(事件)

 

帮助文档如下图:

在当前选择框,选中状态发生改变后会发送本事件。

参数“当先选中状态”返回真表示当前选中,否则返回假。

 

代码编写如下图:

直接在“按钮1”被点击下,调用“选中”写属性,设置属性值为真。

“选中状态被改变”时间下,判断“当先选中状态”的返回值是否为真。

然后弹出对应提示即可。

 

运行效果如下图(GIF):

可以看到“按钮1”被点击后,弹出了提示“选中”

证明“选中状态被改变”事件被触发。

 

 

● 正确使用多个单选框

 

帮助说明:

如果当前窗口需要使用多个单选框时,需要使用一个叫做“单选组合框”的容器组件。

放好容器组件后,在容器组件内放置多个单选框。

 

运行效果如下图(GIF):

只有使用了“单选组合框”容器,多个单选框的时候才能正常切换。