一种单选按钮设置、点击响应方法及装置与流程

文档序号:11133413阅读:507来源:国知局
一种单选按钮设置、点击响应方法及装置与制造工艺

本发明涉及终端技术领域,具体而言,涉及一种单选按钮设置、点击响应方法及装置。



背景技术:

当用户在使用终端上的某些应用程序时,通常会出现一些选项列表让用户进行选择,且用户只能选择其中某一项,比如说,用户在某个网站进行注册时,在选择性别时,终端界面上会出现“男”和“女”两个选项,而用户只能选择其中的一个选项,即用户需要进行单选。

现有的安卓系统中,为了实现单选功能,大都是将选项列表对应的单选按钮设置在同一个单选按钮组内,当该单选按钮组内的某一个单选按钮被用户点击后,该组内的其他单选按钮会自动取消选中状态,即一个按钮组内只有唯一一个按钮能够被选中。

但是,在使用单选按钮组时,该按钮组内可能会混入其它种类的元素,这样会导致整个按钮组点击功能失灵,另外,界面上需要点击响应的单选按钮必须位于同一个单选按钮组内,由于单选按钮组为有形容器,界面上的元素必须在界面上连续分布,才能添加到同一个单选按钮组内。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种单选按钮设置、点击响应方法及装置,以试图解决或者缓解上述出现的问题。

第一方面,本发明实施例提供了一种单选按钮设置方法,其中,所述方法包括:

判断界面上待添加的各个元素的类型是否为单选按钮,当确定待添加的所述元素的类型为单选按钮时,将各个所述元素所对应的单选按钮的引用添加到单选按钮列表中,其中,各个所述元素在界面上的排布为连续排布或非连续排布;

为所述单选按钮列表中的各个所述单选按钮一一对应的设置点击监听器,所述点击监听器用于监听与其对应的所述单选按钮是否被点击。

结合第一方面,本发明实施例提供了上述第一方面的第一种可能的实现方式,其中,所述方法还包括:

为所述单选按钮列表设置一个单选监听器,所述单选监听器用于监听所述单选按钮列表中各个所述单选按钮的单选状态,并将单选状态信息发送给所述单选按钮对应的功能执行单元。

结合第一方面,本发明实施例提供了上述第一方面的第二种可能的实现方式,其中,所述点击监听器的数目与所述单选按钮列表中的单选按钮的数目相等,且一一对应。

第二方面,本发明实施例提供了一种单选按钮点击响应方法,其中,所述方法包括:

监听单选按钮列表中的单选按钮是否被点击,当监听到有所述单选按钮被点击时,将被点击的所述单选按钮的状态设置为选中,将未被点击的所述单选按钮的状态设置为未选中;

监听所述单选按钮列表中各个所述单选按钮的单选状态,当监听到有所述单选按钮的状态为选中状态时,将选中状态信息发送给所述单选按钮对应的功能执行单元。

结合第二方面,本发明实施例提供了上述第二方面的第一种可能的实现方法,其中,所述将被点击的所述单选按钮的状态设置为选中,将未被点击的所述单选按钮的状态设置为未选中,包括:

判断被点击的所述单选按钮当前是否处于选中状态;

当确定被点击的所述单选按钮当前处于未选中状态时,从所述单选按钮列表中取出任意一个所述单选按钮,并判断取出的所述单选按钮是否为被点击的所述单选按钮;

如果是,将所述单选按钮的状态设置为选中,如果否,将所述单选按钮的状态设置为未选中。

结合第二方面的第一种可能的实现方式,本发明实施例提供了上述第二方面的第二种可能的实现方法,其中,所述从所述单选按钮列表中取出任意一个所述单选按钮,包括:

遍历所述单选按钮列表,按序从所述单选按钮列表中获取所述单选按钮的引用。

结合第二方面,本发明实施例提供了上述第二方面的第三种可能的实现方式,其中,所述将被点击的所述单选按钮的状态设置为选中,包括:

调用所述单选按钮的setChecked函数将被点击的所述单选按钮的状态设置为选中。

第三方面,本发明实施例提供了一种单选按钮设置装置,其中,所述装置包括:

添加模块,用于判断界面上待添加的各个元素的类型是否为单选按钮,当确定待添加的所述元素的类型为单选按钮时,将各个所述元素所对应的单选按钮的引用添加到单选按钮列表中,其中,各个所述元素在界面上的排布为连续排布或非连续排布;

第一设置模块,用于为所述单选按钮列表中的各个所述单选按钮一一对应的设置点击监听器,所述点击监听器用于监听与其对应的所述单选按钮是否被点击。

结合第三方面,本发明实施例提供了第三方面的第一种可能的实现方式,其中,所述装置还包括:

第二设置模块,用于为所述单选按钮列表设置一个单选监听器,所述单选监听器用于监听所述单选按钮列表中各个所述单选按钮是否被选中,并将选中信息发送给所述单选按钮对应的功能执行单元。

第四方面,本发明实施例提供了一种单选按钮点击响应装置,其中,所述装置包括:

第一监听模块,用于监听单选按钮列表中的单选按钮是否被点击,当监听到有所述单选按钮被点击时,将被点击的所述单选按钮的状态设置为选中,将未被点击的所述单选按钮的状态设置为未选中;

第二监听模块,用于监听所述单选按钮列表中各个所述单选按钮的状态,当监听到有所述单选按钮的状态为选中状态时,将选中状态信息发送给所述单选按钮对应的功能执行单元。

本发明实施例提供了一种单选按钮设置、点击响应方法及装置,在单选按钮列表中不会出现非单选按钮类型的元素,避免了出现单选按钮列表内的单选按钮点击响应失灵的情况,同时,使用单选按钮列表可以添加界面上任意位置处的单选按钮,不管界面上的单选按钮连续排布还是非连续排布,均可以添加到单选按钮列表中。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例1所提供的一种单选按钮设置方法的流程图;

图2示出了本发明实施例2所提供的一种单选按钮点击响应方法的流程图;

图3示出了本发明实施例3所提供的一种单选按钮设置装置的结构示意图;

图4示出了本发明实施例4所提供的一种单选按钮点击响应装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

考虑到现有的安卓系统中,在实现单选功能时,大都是将选项列表对应的单选按钮设置在同一个单选按钮组内,但是,在使用单选按钮组时,该按钮组内可能会混入其它种类的元素,这样会导致整个按钮组点击功能失灵,另外,界面上需要点击响应的单选按钮必须位于同一个单选按钮组内,由于单选按钮组为有形容器,界面上的元素必须在界面上连续排布,才能添加到同一个单选按钮组内。基于此,本发明实施例提供了一种单选按钮设置、点击响应方法及装置,下面通过实施例进行描述。

实施例1

本发明实施例提供了一种单选按钮设置方法,如图1所示,该方法包括步骤S110-S120,具体如下。

S110,判断界面上待添加的各个元素的类型是否为单选按钮,当确定待添加的元素的类型为单选按钮时,将各个元素所对应的单选按钮的引用添加到单选按钮列表中,其中,各个元素在界面上的排布为连续排布或非连续排布。

其中,在将界面上待添加的各个元素添加到单选按钮列表中时,单选按钮列表会对各个元素的类型进行判断,判断元素是否为单选按钮,如果该元素为单选按钮,则允许将单选按钮的引用添加到单选按钮列表中,如果该元素不是单选按钮,则单选按钮列表不允许将该元素添加到单选按钮列表中,这样,单选按钮列表中不会混入除单选按钮类型之外的其它类型的元素,不会出现整个单选按钮列表点击响应功能失灵。

上述单选按钮列表通过调用自身的add函数,将单选按钮的引用保存在列表中。

另外,待添加的各个元素在界面上可以连续排布,也可以非连续排布,在本发明实施例中,由于采用单选按钮列表作为保存单选按钮的容器,单选按钮为无形的工具,可以将界面上任意位置处的单选按钮的引用添加到单选按钮列表(List)中,因此,不管界面上的元素位于界面上哪个位置,只要该元素的类型为单选按钮,就可以将该元素对应的单选按钮的引用添加到单选按钮列表中。因此,不管界面上的元素是连续排布还是非连续排布,都可以添加到同一个单选按钮列表中。

S120,为单选按钮列表中的各个单选按钮一一对应的设置点击监听器,点击监听器用于监听与其对应的单选按钮是否被点击。

其中,上述可以通过调用单选按钮自身的函数setOnClickListener,来为单选按钮设置点击监听器(OnClickListener)。

其中,上述点击监听器的数目与单选按钮列表中的单选按钮的数目相等,且一一对应。

即,在本发明实施例中,为每个单选按钮设置一个点击监听器,用于监听该单选按钮是否被点击。

其中,当单选按钮列表中的某个单选按钮被点击后,该单选按钮对应的点击监听器会调用该单选按钮自身的函数setChecked将该单选按钮的状态设置为选中,这时,该单选按钮的状态设置为选中后,可能会启动该单选按钮对应的功能,因此,为了实现单选按钮的状态设置为选中后,启动该单选按钮对应的功能,上述单选按钮设置方法还包括:

为单选按钮列表设置一个单选监听器,该单选监听器用于监听单选按钮列表中各个单选按钮的单选状态,并将单选状态信息发送给该单选按钮对应的功能执行单元。

其中,可以通过调用setOnButtonCheckedChangeListener函数,实现为单选按钮列表设置单选监听器。

上述单选状态信息包括当前状态为选中状态的单选按钮以及该单选按钮为选中状态,将上述单选状态发送给该单选按钮对应的功能执行单元目的是告诉该功能执行单元其对应的单选按钮已经处于选中状态,该功能执行单元需要执行与该单选按钮对应的功能。

比如说,在某个单选按钮列表中,由“单选按钮1”、“单选按钮2”和“单选按钮3”三个单选按钮,如果“单选按钮1”被选中,则将“单选按钮1”被选中这一单选状态信息发送给“单选按钮1”对应的功能执行单元,由该功能执行单元执行“单选按钮1”对应的功能,或者,如果,上述单选按钮列表内被选中的单选按钮有“单选按钮1”变成了“单选按钮2”,则,单选监听器将“单选按钮2”被选中这一单选状态信息发送给“单选按钮2”对应的功能执行单元,由该功能执行单元执行“单选按钮2”对应的功能。

当然,上述只是举例说明单选监听器的具体工作,并没有限定单选按钮列表中包含的单选按钮的个数,也没有限定具体哪个单选按钮被选中。

其中,一个单选按钮列表设置一个单选监听器,该单选监听器用于同时监听该单选按钮列表内的所有单选按钮的状态。

本发明实施例提供的单选按钮设置方法,在单选按钮列表中不会出现非单选按钮类型的元素,避免了出现单选按钮列表内的单选按钮点击响应失灵的情况,同时,使用单选按钮列表可以添加界面上任意位置处的单选按钮,不管界面上的单选按钮连续排布还是非连续排布,均可以添加到单选按钮列表中。

实施例2

本发明实施例提供了一种单选按钮点击响应方法,本发明实施例中采用的单选按钮是通过上述实施例1提供的方法设置的,即通过实施例1中的方法设置了单选按钮后,则采用本发明实施例提供的方法对单选按钮进行点击响应,由于通过实施例1中的方法设置的单选按钮,在单选按钮列表中不会出现非单选按钮类型的元素,因此,采用本发明实施例提供的方法对实施例1设置的单选按钮点击响应时,不会出现点击响应失灵的情况。其中,如图2所示,该方法包括步骤S210-S220,具体如下。

S210,监听单选按钮列表中的单选按钮是否被点击,当监听到有单选按钮被点击时,将被点击的单选按钮的状态设置为选中,将未被点击的单选按钮的状态设置为未选中。

其中,可以通过调用单选按钮的setChecked函数将被点击的单选按钮的状态设置为选中。

其中,上述将被点击的单选按钮的状态设置为选中,将未被点击的单选按钮的状态设置为未选中,具体包括:

判断被点击的单选按钮当前是否处于选中状态;当确定被点击的单选按钮当前处于未选中状态时,从单选按钮列表中取出任意一个单选按钮,并判断取出的单选按钮是否为被点击的单选按钮;如果是,将该单选按钮的状态设置为选中,如果否,将该单选按钮的状态设置为未选中。

其中,上述可以通过点击监听器监听单选按钮列表中其对应的单选按钮是否被点击,当监听到单选按钮列表中的任意一个单选按钮被用户点击时,该单选按钮对应的点击监听器则调用该单选按钮自身的isChecked函数,通过isChecked函数判断该单选按钮当前是否已经被选中,即判断该单选按钮当前是否处于选中状态。

如果该单选按钮当前已经处于选中状态,则不再做任何响应,即结束当前流程,如果该单选按钮当前未处于选中状态,则点击监听器调用该单选按钮自身的setChecked函数,通过setChecked函数将该单选按钮的状态设置为选中状态,将该单选按钮列表中的其它单选按钮的状态设置为未选中状态,以达到同一时间该单选按钮列表中只有一个单选按钮被选中。

其中,上述将被点击且处于未选中状态的单选按钮的状态设置为选中状态,具体包括如下过程:从单选按钮列表中任意取出一个单选按钮,判断该单选按钮是否为被点击的单选按钮,如果取出的单选按钮为被点击的单选按钮,则通过调用取出的该单选按钮的setChecked函数,将该单选按钮的状态设置为选中,如果,取出的单选按钮不是被点击的单选按钮,则通过调用取出的该单选按钮的setChecked函数,将该单选按钮的状态设置为未选中,通过上述过程,直至将单选按钮列表中的每个单选按钮的状态均设置为选中或者未选中为止。

其中,上述可以通过if语句判断取出的单选按钮是否为被点击的单选按钮。

其中,上述从单选按钮列表中取出任意一个单选按钮,可以通过如下方式实现:

遍历单选按钮列表,按序从单选按钮列表中获取单选按钮的引用。

其中,在单选按钮列表中保存有每个单选按钮的引用。

在本发明实施例中,可以通过for语句遍历上述单选按钮列表,并通过单选按钮列表的get函数获取单选按钮列表中单选按钮的引用。

S220,监听单选按钮列表中各个单选按钮的单选状态,当监听到有单选按钮的状态为选中状态时,将选中状态信息发送给单选按钮对应的功能执行单元。

其中,上述监听单选按钮列表中各个单选按钮的状态可以通过单选监听器来执行,当单选监听器监听到有单选按钮的由未选中状态变成选中状态时,调用单选监听器的OnCheckedChangeListener函数,并触发单选监听器的OnCheckedChanged回调函数,将选中状态信息发送给该单选按钮对应的功能执行单元,即通知该功能执行单元,其对应的单选按钮处于选中状态,需要该功能执行单元执行该单选按钮对应的功能。

本发明实施例提供的单选按钮点击响应方法,在进行单选按钮点击时,不会出现整个单选按钮列表点击失灵的情况。

实施例3

本发明实施例提供了一种单选按钮设置装置,如图3所示,该装置包括添加模块310和第一设置模块320;

上述添加模块310,用于判断界面上待添加的各个元素的类型是否为单选按钮,当确定待添加的元素的类型为单选按钮时,将各个元素多对应的单选按钮的引用添加到单选按钮列表中,其中,各个元素在界面上的排布为连续排布或非连续排布;

上述单选按钮列表通过调用自身的add函数,将单选按钮的引用保存在列表中。

上述第一设置模块320,用于为单选按钮列表中的各个单选按钮一一对应的设置点击监听器,点击监听器用于监听与其对应的单选按钮是否被点击。

其中,上述可以通过调用单选按钮自身的函数setOnClickListener,来为单选按钮设置点击监听器(OnClickListener)。

其中,上述点击监听器的数目与单选按钮列表中的单选按钮的数目相等,且一一对应。

其中,作为一个实施例,上述单选按钮设置装置还包括第二设置模块;

第二设置模块,用于为单选按钮列表设置一个单选监听器,该单选监听器用于监听单选按钮列表中各个单选按钮的单选状态,并将单选状态信息发送给单选按钮对应的功能执行单元。

其中,可以通过调用setOnButtonCheckedChangeListener函数,实现为单选按钮列表设置单选监听器。

上述单选状态信息包括当前状态为选中状态的单选按钮以及该单选按钮为选中状态,将上述单选状态发送给该单选按钮对应的功能执行单元目的是告诉该功能执行单元其对应的单选按钮已经处于选中状态,该功能执行单元需要执行与该单选按钮对应的功能。

本发明实施例提供的单选按钮设置装置,在单选按钮列表中不会出现非单选按钮类型的元素,避免了出现单选按钮列表内的单选按钮点击响应失灵的情况,同时,使用单选按钮列表可以添加界面上任意位置处的单选按钮,不管界面上的单选按钮连续排布还是非连续排布,均可以添加到单选按钮列表中。

实施例4

本发明实施例提供了一种单选按钮点击响应装置,如图4所示,该装置第一监听模块410和第二监听模块420;

上述第一监听模块410,用于监听单选按钮列表中的单选按钮是否被点击,当监听到有单选按钮被点击时,将被点击的单选按钮的状态设置为选中,将违背点击的单选按钮的状态设置为未选中;

其中,可以通过调用单选按钮的setChecked函数将被点击的单选按钮的状态设置为选中。

上述第二监听模块420,用于监听单选按钮列表中各个单选按钮的单选状态,当监听到有单选按钮的状态为选中状态时,将选中状态信息发送给单选按钮对应的功能执行单元。

本发明实施例提供的单选按钮点击响应装置,在进行单选按钮点击时,不会出现整个单选按钮列表点击失灵的情况。

本发明实施例所提供的单选按钮设置、点击响应装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。

在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1