提示对话框类操作实例讲解

作者:创世魂

 

● 帮助说明

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

 

● 准备一个界面

 

界面如下图:

打开窗口设计器,放两个“按钮”,右侧属性文本分别起名“按钮1”“按钮2”

保存布局后,右键“按钮”,添加“按钮被单击事件接收方法”,添加完毕后如下图所示。

 

一、提示对话框类

 

● 创建列表对话框
● 项目被选中(事件)

 

以上两个为关联方法,放在一起讲解。

“创建列表对话框”帮助文档:

顾名思义,就是创建一个列表形式的对话框,并返回“提示对话框类”

参数1:通常填写“本对象”即可。

参数2:填写文本数组。

 

"项目被选中(事件)"帮助文档:

注意:调用了“创建列表对话框”“创建单选列表对话框”都会触发本事件。

返回选中的“项目索引”

 

代码编写(1):

定义一个类型为“提示对话框类”的成员变量,设置参考。

“按钮1”被单击下,定一个类型为“文本型[]”的数组变量,设置数组初始值。

创建“列表对话框”,填入定义的“文本数组”变量,最后赋值给定义的“提示对话框”变量。

然后“挂接事件”最后利用“显示”方法显示对话框。

 

代码编写(2):

按照老方法鼠标右键“提示对话框类”后添加“项目被选中”接收事件。

添加之后,到文本转换“被选中的项目索引”,方便演示结果。

 

运行效果如下图(GIF):

可以看到“弹出对话框”后,随便选中一个项目,就会立刻返回“项目索引”,对话框也会被关闭。

 

 

● 创建单选列表对话框

 

本方法和“单选列表对话框类”大同小异,不同之处就是调用方式不一样。

本方法的的调用方式“提示对话框类.创建单选列表对话框 (,,)”

代码编写参考“单选列表对话框类”,这里不再进行讲解。

 

 

● 创建多选列表对话框

 

调用方式:“提示对话框类.创建多选列表对话框 (,,)”.

代码编写参考“多选列表对话框类”,这里不再进行讲解。

 

 

● 创建提示对话框
● 置按钮
● 内容(写)
● 按钮被单击(事件)

 

“创建提示对话框”默认是没有任何内容的,只有一个灰色透明的遮罩层,所以这里一次性讲解四个方法。

“创建提示对话框”帮助:

只有一个“窗口”参数,顾名思义创建并返回当前提示对话框类。

利用本类,可以创建一个带有“三个按钮”的信息框。

 

"置按钮"帮助:

给空的"提示对话框"添加"按钮",具体按钮类型可以点击"对话框按钮类型"查看。

按钮类型调用方式:"对话框按钮类型.XXX"。

最多可以设置"三个按钮",按钮位置"不可调整",它处于对话框的下面(和"信息框"按钮位置相同)。

 

"内容(写)"帮助:

写属性,顾名思义给对话框设置一段文本内容。

 

"按钮被单击(事件)"帮助:

对话框“按钮”被点击后发送此事件,并且会返回“对话框按钮类型”参数。

 

代码编写(1)

“按钮1”被单击下,一次性添加三个“置按钮”方法,分别设置不同的“标题”“按钮类型”

随后可以设置一个“标题”属性,本属性继承自“对话框类”

然后设置提示对话框“内容”属性。

最后“挂接事件”后,“显示”当前对话框。

 

代码编写(2)

添加“提示对话框类_按钮被单击”接收事件,老方法右键“成员变量”里的“类名”就可以添加。

添加后,指定“来源对象”后分别判断返回的“按钮类型”

最后执行“提示框”方法。

 

运行效果如下图(GIF):

点击“按钮1”后可以看到弹出了一个带有“三个按钮”的信息框。

并且对应的“按钮事件”也全部执行。

 

 

● 置标题组件

 

帮助文档如下图:

顾名思义,就是给当前“对话框”设置一个“自定义标题”

只有一个火山“窗口组件”参数。

 

代码编写

我们在原代码的基础上增加一些代码。

定义一个类型为“按钮”的局部变量,设置“按钮标题”

然后利用“本方法”添加“按钮”到标题。

随后可以通过“挂接事件”,来挂接“按钮被单击”事件,标记值写1。

最后可以通过“否则”来判断标记值是否等于“1”

如果相等,就表示“标题按钮”被点击。

 

运行效果

点击“按钮1”弹出“信息框”可以看到,标题变成了一个“按钮”,并且覆盖了最开始设置的“标题文本”

点击“标题按钮”后,对应的“提示框”也成功弹出。

 

 

● 置组件
● 置组件2

 

以上两个方法都是给“对话框添加组件”“置组件”不能设置外边距,“置组件2”可以设置外边距。

这里举例“置组件2”说明。

帮助文档如下图:

可以看到有“五个”参数。

参数1:要添加的窗口组件。

参数2到5分别设置:左、顶、右、底边距,不设置默认为0。

 

代码编写(1):

依然在原来代码的基础上进行修改。

增加三个组件变量,分别为“线性布局器”“文本框”“编辑框”

“文本框”设置一个标题,“编辑框”设置一个“ID”“常用输入类型”

随后“布局器”添加“文本框”“编辑框”组件,然后设置编辑框宽度“填满父组件”

最后利用“置组件2”添加“布局器”,随后分别设置“外边距”

 

代码编写(2):

“提示对话框_按钮被单击”接收事件下,判断“确认”按钮被点击。

创建一个类型为“编辑框”的变量,设置参考,因为这里不需要创建编辑框组件。

利用“查找组件()”方法,去查找“编辑框的ID”(本方法继承自“对话框类”)。

查找后强转为“编辑框”组件,赋值给定义的“编辑框1”变量。

最后可以利用“编辑框1.内容”读属性,读取编辑框内容。

 

运行效果如下图(GIF):

可以看到“按钮1”点击后,弹出了一个带有“编辑框、文本框”“提示对话框”

并且大家可以看到,对话框自身“文本内容”并没有被添加的组件覆盖。

“编辑框”内输入的文本也变成了“密码模式”,并且点击“确定”后可以取出密码。

 

 

● 图标(写)

 

“图标写属性”和其它类的用法一致,这里不再进行讲解。

 

 

● 多选项目被选中(事件)

 

帮助文档如下图:

只有调用“创建多选列表对话框”的时候,“本事件”才会触发。

注意:本事件“不会返回所有项目”的选中状态,只会返回“当前选择”的项目。

 

代码编写(1):

定义一个“文本数组”变量和“逻辑数组”变量,设置初始值后分别写入参数。

具体参数说明可参看:“多选列表对话框类”

最后“挂接事件”

 

代码编写(2):

添加“提示对话框类_多选项目被选中”的接收事件。

为了方便演示,我这里判断“是否选中=真”,并且执行了对应的操作。

 

运行效果(GIF):

大家可以看到,我随便选择了一个项目后,对应的“项目索引”“选中状态”立刻“返回”