一种界面元素的筛选方法、智能终端及存储介质转让专利

申请号 : CN202010285707.7

文献号 : CN111459369B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 袁伟铨程泉森徐占波

申请人 : 深圳康佳电子科技有限公司

摘要 :

本发明公开了一种界面元素的筛选方法、智能终端及存储介质,所述方法包括:窗口初始化,新建一位图用于保存数据;将界面元素添加到新建的元素表中;接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形;检测所述元素表中的所有界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中。本发明在用户需要的情况下,用户在屏幕上绘制目标图形,就可以选中目标图形内的多项界面元素,以尽量少的操作完成大量对象的选取,方便用户从群体中选择出部分个体进行所需要的操作,提高了人机交互的便捷性。

权利要求 :

1.一种界面元素的筛选方法,其特征在于,所述界面元素的筛选方法包括:窗口初始化,新建一位图用于保存数据;

将界面元素添加到新建的元素表中;

接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形;

检测所述元素表中的所有界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中;

其中,所述界面元素拥有绘制所需的位置信息,不需要实际将所述界面元素画在所述位图上,就能知道所述界面元素在所述位图上对应的区域。

2.根据权利要求1所述的界面元素的筛选方法,其特征在于,所述位图的大小与所述窗口的大小相同。

3.根据权利要求1所述的界面元素的筛选方法,其特征在于,所述选取操作包括:外接鼠标的选取操作和触摸框触摸的选取操作。

4.根据权利要求3所述的界面元素的筛选方法,其特征在于,所述界面元素为正在所述窗口中显示,并直接或者间接通过画布绘制到所述位图上的元素。

5.根据权利要求1所述的界面元素的筛选方法,其特征在于,所述元素表和所述选中表为在所述窗口初始化时新建的空白表格。

6.根据权利要求1所述的界面元素的筛选方法,其特征在于,所述根据所述选取操作在所述位图上绘制目标图形,具体包括:当用户通过所述选取操作在所述位图上绘制目标图形时,自动连接所述目标图形的起点与终点以形成闭合曲线,所述闭合曲线内填充有预设颜色,所述目标图形用于选中用户需要的界面元素。

7.根据权利要求1所述的界面元素的筛选方法,其特征在于,遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,具体包括:

获取所述元素表,遍历所述元素表中的界面元素;

检测每个界面元素在所述位图的区域是否包含预设颜色的像素;

如是,则将满足要求的界面元素标记为选中,并作为目标界面元素添加到选中表中。

8.根据权利要求7所述的界面元素的筛选方法,其特征在于,所述遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,之后还包括:

接收用户的控制操作,将所述选中表中的目标界面元素按照所述控制操作进行执行;

其中,所述控制操作包括移动、放大、缩小、隐藏和删除。

9.一种智能终端,其特征在于,所述智能终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的界面元素的筛选程序,所述界面元素的筛选程序被所述处理器执行时实现如权利要求1‑8任一项所述的界面元素的筛选方法的步骤。

10.一种存储介质,其特征在于,所述存储介质存储有界面元素的筛选程序,所述界面元素的筛选程序被处理器执行时实现如权利要求1‑8任一项所述的界面元素的筛选方法的步骤。

说明书 :

一种界面元素的筛选方法、智能终端及存储介质

技术领域

[0001] 本发明涉及智能终端界面处理技术领域,尤其涉及一种界面元素的筛选方法、智能终端及存储介质。

背景技术

[0002] 在智能电视上,用户可以通过外接鼠标或者触摸框,来实现触屏操作。自然地,通过触摸屏幕画圈来同时选择多项界面元素,选择多项界面元素的目的是将个体从群体中独
立出来,选择之后,可以对被选择的对象实行下一步操作,例如下一步操作可以是放大缩
小,可以是显示不同的文字,触摸屏幕画圈的目的是一种更便捷更人性化的体验方式,从而
形成了一个良好的交互方式。
[0003] 设计师实现View(窗口,View是安卓UI的一种最基础的控件,界面都由此演化而来)自定义时,对不同的动效,也会设计多种不同的对象,而安卓虽然提供了Canvas相关类
让设计师可以对View进行自定义,但是并没有提供类似的广域筛选的方法。
[0004] 现有的筛选(筛选目的是将个体从群体中独立出来,以便后面可以对其进行其他操)方式,是相交逻辑做的,比如现在有一根线,然后用手指划过这条线,手指的轨迹与线相
交的时候,会去选中这根线。
[0005] 现有的筛选方式不够便捷,例如有这么一个场景,用户在屏幕上写了一首诗,用户现在想选中这首诗,然后把它挪到旁边,以便他再写一首诗,在这个场景中,这首诗里的每
个字的每一个笔画,都是一根根独立的“线”,如果用过去的方法,要相交才能选中的话,那
选中这首诗要让手指经过所有笔画才行,且不说一些“点”、“撇”可能一不注意没划过漏了,
单是来回划来划去的操作也是很麻烦的,即现有的筛选方式不够人性化。
[0006] 因此,现有技术还有待于改进和发展。

发明内容

[0007] 本发明的主要目的在于提供一种界面元素的筛选方法、智能终端及存储介质,旨在解决现有技术中在屏幕上选择对象操作繁琐,筛选方式不够便捷的问题。
[0008] 为实现上述目的,本发明提供一种界面元素的筛选方法,所述界面元素的筛选方法包括如下步骤:
[0009] 窗口初始化,新建一位图用于保存数据;
[0010] 将界面元素添加到新建的元素表中;
[0011] 接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形;
[0012] 检测所述元素表中的所有界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中。
[0013] 可选地,所述的界面元素的筛选方法,其中,所述位图的大小与所述窗口的大小相同。
[0014] 可选地,所述的界面元素的筛选方法,其中,所述选取操作包括:外接鼠标的选取操作和触摸框触摸的选取操作。
[0015] 可选地,所述的界面元素的筛选方法,其中,所述界面元素为正在所述窗口中显示,并直接或者间接通过所述画布绘制到所述位图上的元素。
[0016] 可选地,所述的界面元素的筛选方法,其中,所述元素表和所述选中表为在所述窗口初始化时新建的空白表格。
[0017] 可选地,所述的界面元素的筛选方法,其中,所述根据所述选取操作在所述位图上绘制目标图形,具体包括:
[0018] 当用户通过所述选取操作在所述位图上绘制目标图形时,自动连接所述目标图形的起点与终点以形成闭合曲线,所述闭合曲线内填充有预设颜色,所述目标图形用于选中
用户需要的界面元素。
[0019] 可选地,所述的界面元素的筛选方法,其中,所述遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,具体包
括:
[0020] 获取所述元素表,遍历所述元素表中的界面元素;
[0021] 检测每个界面元素在所述位图的区域是否包含预设颜色的像素;
[0022] 如是,则将满足要求的界面元素标记为选中,并作为目标界面元素添加到选中表中。
[0023] 可选地,所述的界面元素的筛选方法,其中,所述遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,之后还
包括:
[0024] 接收用户的控制操作,将所述选中表中的目标界面元素按照所述控制操作进行执行;
[0025] 其中,所述控制操作包括移动、放大、缩小、隐藏和删除。
[0026] 此外,为实现上述目的,本发明还提供一种智能终端,其中,所述智能终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的界面元素的筛选程序,所
述界面元素的筛选程序被所述处理器执行时实现如上所述的界面元素的筛选方法的步骤。
[0027] 此外,为实现上述目的,本发明还提供一种存储介质,其中,所述存储介质存储有界面元素的筛选程序,所述界面元素的筛选程序被处理器执行时实现如上所述的界面元素
的筛选方法的步骤。
[0028] 本发明通过窗口初始化,新建一位图用于保存数据;将界面元素添加到新建的元素表中;接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形;检测所述元
素表中的所有界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并
添加到新建的选中表中。本发明在用户需要的情况下,用户在屏幕上绘制目标图形,就可以
选中目标图形内的多项界面元素,以尽量少的操作完成大量对象的选取,方便用户从群体
中选择出部分个体进行所需要的操作,提高了人机交互的便捷性。

附图说明

[0029] 图1是本发明界面元素的筛选方法的较佳实施例的流程图;
[0030] 图2是本发明界面元素的筛选方法的较佳实施例中筛选界面元素整个流程示意图;
[0031] 图3为本发明智能终端的较佳实施例的运行环境示意图。

具体实施方式

[0032] 为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用
于限定本发明。
[0033] 本发明较佳实施例所述的界面元素的筛选方法,如图1所示,所述界面元素的筛选方法包括以下步骤:
[0034] 步骤S10、窗口初始化,新建一位图用于保存数据。
[0035] 具体地,窗口(View,在进行Android开发的时候,布局页面的话就会用到View控件)首先进行初始化,在View初始化阶段,新建一张与所述窗口(View)大小一致的Bitmap
(即位图,是使用像素阵列来表示的图像),可以称之为“筛选蒙版”(筛选蒙版并不会显示出
来,只用于做数据保存)。
[0036] 例如,可以定义一个长和宽是屏幕(例如智能电视屏幕)长宽2倍的View,这样屏幕一次性只能显示该View的1/4,需要选中该View后进行拖拽,来查看该View的其他部分。
[0037] 其中,所述位图通过画布(Canvas,画布类用于保存绘制的信息)进行绘制,位图就是一张用Canvas在其上绘制,但是不展示给用户看,只留给程序“看”的一张Bitmap。
[0038] 步骤S20、将界面元素添加到新建的元素表中。
[0039] 具体地,所述元素表为在所述窗口(View)初始化时新建的空白表格;所述界面元素为正在所述窗口中显示,能被用户看到,并直接或者间接通过所述画布(Canvas)绘制到
所述位图(Bitmap)上的元素(例如东西、物件、Item等)。
[0040] 其中,界面元素拥有绘制所需的位置信息,可以根据通过Canvas类,绘制在Bitmap上;也就是说,不需要实际将其画在某个Bitmap上,就能知道界面元素在某个Bitmap上对应
的区域。
[0041] 步骤S30、接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形。
[0042] 具体地,用户的选取操作可以包括外接鼠标的选取操作操作或者触摸框触摸的选取操作,例如在智能电视上,用户可以通过外接鼠标或者触摸框,来实现触屏操作。
[0043] 当用户通过所述选取操作在所述位图上绘制目标图形时,自动连接所述目标图形的起点与终点以形成闭合曲线,所述闭合曲线内填充有预设颜色,所述目标图形用于选中
用户需要的界面元素;例如,用户通过触屏操作在所述位图上绘制目标图形,所述目标图形
为触屏操作起点和终点的闭合曲线,所述闭合曲线内填充有预设颜色,所述目标图形用于
选中用户需要的界面元素;例如用户通过触屏操作绘制圈圈(当然也可以是其他任何图形,
程序会自动连接曲线的起点与终点,使其成为闭合曲线),要选中的比如是一根线,那么画
一个包住这根线的圈,线在圈里面,即可被选中,这种方式可以称为广域筛选。
[0044] 具体地,当根据所述触屏操作绘制目标图形后,在所述位图(Bitmap,即“筛选蒙版”)上绘制所述目标图形(例如上面绘制的圈圈)。
[0045] 例如,在“筛选蒙版”上,用纯黑色的实心画笔画出用户画的圈圈。为了使“筛选蒙版”上用户画圈的范围内的颜色为黑色(为0x000000)。因为是后画的话,所以可以盖住已经
画在上面的“界面元素”。因为是纯黑色,所以颜色为0(而“筛选蒙版”上其他没涂黑的部分
是白色的即0xFFFFFF)。
[0046] 进一步地,可以选择将“界面元素”以序号为颜色画在“筛选蒙版”上,序号是从1开始的,所以颜色是1~0xFFFFFF;“界面元素”画上来的颜色不是黑色(0x000000),除非后来
有部分被“圈”里画的黑色盖住了。
[0047] 例如,首先颜色可以通过RBG来描述,比如Red:0Blue:0Green:0所代表的就是黑色,Red:255Blue:0Green:0所代表的是红色,而在安卓中,是用十六进制数字记录颜色的,
比如提到的黑色0x000000与红色0xFF0000,其中最左的“0x”是固定前缀,代表这是16进制
数,而后面则每两位与与RBG对应。举个例子,Red:1Blue:2Green:3对应的是0x010203,所以
从纯黑0x000000(对应10进制的0),到纯白0xFFFFFF(对应10进制的16的6次方‑1)的数字,
都可以对应一个颜色。
[0048] 序号就是“元素”在表中的位置,结合前两者,“位置”的体现是“序号”,“序号”是一个“数字”,“数字”对应一个“颜色”,所以就有了序号作为颜色这种说法。
[0049] 至于界面元素怎么绘制到“筛选蒙版”上,比如要显示一根从(0,0)到(500,500)的红色宽度为4的直线,就需要通过Canvas在View负责显示的Bitmap上,用红色(0xFF0000)、
宽度为4的画笔,从(0,0)到(500,500)画一条线。而界面元素绘制到“筛选蒙版”,只是换了
画笔的颜色和Bitmap而已,通过Canvas在“筛选蒙版”这张Bitmap上,用0x000011(假设这根
线序号为11)、宽度为4的画笔,从(0,0)到(500,500)画一条线。
[0050] 步骤S40、遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中。
[0051] 具体地,所述选中表为在所述窗口(View)初始化时新建的空白表格;获取所述元素表,遍历所述元素表中的界面元素;检测每个界面元素在所述位图的区域是否包含预设
颜色的像素;如是,则将满足要求的界面元素标记为选中,并作为目标界面元素添加到选中
表中;如否则不作操作。
[0052] 例如,遍历“元素表”中的界面元素,检测每个界面元素在“筛选蒙版”的区域里是否有0颜色的像素,如果有,标记为选中,添加进另一张表中,称之为“选中表”。
[0053] 进一步地,当得到了含所有目标界面元素的选中表后,接收用户的控制操作,将所述选中表中的目标界面元素按照所述控制操作进行执行;有了选中表里存的目标界面元
素,就可以对被选中的目标界面元素做执行用户想做的操作,例如移动,放大,缩小,隐藏,
删除等等操作。
[0054] 例如,用户在屏幕上写了一首诗,他现在想选中这首诗,然后把它挪到旁边,以便他再写一首诗。在这个场景中,这首诗里的每个字的每一个笔画,都是一根根独立的“线”,
如果用现有的方法,要相交才能选中的话,那选中这首诗要让手指经过所有笔画才行,且不
说一些“点”、“撇”可能一不注意没划过漏了,单是来回划来划去也是很麻烦,而本发明只需
要画一个包住这首诗的圈就可以了,然后进行移动操作;或者在审阅房屋平面设计图时,觉
得这个设计图里的桌椅多余,就可以“筛选”中自己觉得多余的桌椅的图标,然后删除掉;另
外还可以让“筛选”中的对象做动画啊,显示文字等操作。
[0055] 本发明基于安卓Canvas类(画布类,用于保存绘制的信息),MotionEvent类(动作事件类,用来保存触摸事等件信息,MotionEvent类是安卓封装的触摸事件的信息,用处是
获取手指/鼠标现在的位置以及触摸状态)以及Bitmap类(位图类,用于保存位图信息),在
用户需要的情况下,用户在屏幕上绘制目标图形,就可以选中绘制目标图形内的多项界面
元素,以尽量少的操作完成大量对象的选取,方便用户从群体中选择出部分个体进行所需
要的操作,提高了人机交互的便捷性;例如设计师通过这种方式就可以为用户提供更灵活
多选交互的界面。
[0056] 其中,Bitmap类是位图类,可以看做是一张纸,Canvas类是绘制类,可以看做是用画笔进行操作。如果没有Canvas类,Bitmap类只是一张纸,可以用来展示(也可以不展示),
但无法修改其中内容。如果没用Bitmap类,Canvas类只是空挥画笔,也无法展示它画了什
么。所以Canvas和Bitmap是结合使用的,Canvas负责挥动画笔,修改Bitmap的内容,而
Bitmap负责展示给人看,让别人知道Canvas到底画了什么。当然,也可以画了之后不展示
Bitmap给用户看,只留给程序自己“看”,后文提到的“筛选蒙版”就是这么一种利用Bitmap
的方式。
[0057] 进一步地,如图2所示,本发明中筛选界面元素的整个过程如下:
[0058] 步骤S101、窗口初始化;
[0059] 步骤S102、根据窗口大小,新建一位图(白色筛选蒙版)用于保存数据;
[0060] 步骤S103、将界面元素添加到新建的元素表中;
[0061] 步骤S104、接收用户的选取操作,根据所述选取操作绘制目标图形(例如用户通过触屏操作绘制圈圈);
[0062] 步骤S105、在筛选蒙版上绘制所述目标图形;
[0063] 步骤S106、遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中;
[0064] 步骤S107、得到选中表。
[0065] 进一步地,如图3所示,基于上述界面元素的筛选方法,本发明还相应提供了一种智能终端,所述智能终端包括处理器10、存储器20及显示器30。图3仅示出了智能终端的部
分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的
组件。
[0066] 所述存储器20在一些实施例中可以是所述智能终端的内部存储单元,例如智能终端的硬盘或内存。所述存储器20在另一些实施例中也可以是所述智能终端的外部存储设
备,例如所述智能终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数
字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器20还可以既包
括所述智能终端的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述
智能终端的应用软件及各类数据,例如所述安装智能终端的程序代码等。所述存储器20还
可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有界
面元素的筛选程序40,该界面元素的筛选程序40可被处理器10所执行,从而实现本申请中
界面元素的筛选方法。
[0067] 所述处理器10在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数
据,例如执行所述界面元素的筛选方法等。
[0068] 所述显示器30在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light‑Emitting Diode,有机发光二极管)触摸器等。所述显示器30用
于显示在所述智能终端的信息以及用于显示可视化的用户界面。所述智能终端的部件10‑
30通过系统总线相互通信。
[0069] 在一实施例中,当处理器10执行所述存储器20中界面元素的筛选程序40时实现以下步骤:
[0070] 窗口初始化,新建一位图用于保存数据;
[0071] 将界面元素添加到新建的元素表中;
[0072] 接收用户的选取操作,根据所述选取操作在所述位图上绘制目标图形;
[0073] 检测所述元素表中的所有界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的选中表中。
[0074] 所述位图的大小与所述窗口的大小相同。
[0075] 所述选取操作包括:外接鼠标的选取操作和触摸框触摸的选取操作。
[0076] 所述界面元素为正在所述窗口中显示,并直接或者间接通过所述画布绘制到所述位图上的元素。
[0077] 所述元素表和所述选中表为在所述窗口初始化时新建的空白表格。
[0078] 所述根据所述选取操作在所述位图上绘制目标图形,具体包括:
[0079] 当用户通过所述选取操作在所述位图上绘制目标图形时,自动连接所述目标图形的起点与终点以形成闭合曲线,所述闭合曲线内填充有预设颜色,所述目标图形用于选中
用户需要的界面元素。
[0080] 所述遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,具体包括:
[0081] 获取所述元素表,遍历所述元素表中的界面元素;
[0082] 检测每个界面元素在所述位图的区域是否包含预设颜色的像素;
[0083] 如是,则将满足要求的界面元素标记为选中,并作为目标界面元素添加到选中表中。
[0084] 所述遍历所述元素表中的界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到选中表中,之后还包括:
[0085] 接收用户的控制操作,将所述选中表中的目标界面元素按照所述控制操作进行执行;
[0086] 其中,所述控制操作包括移动、放大、缩小、隐藏和删除。
[0087] 本发明还提供一种存储介质,其中,所述存储介质存储有界面元素的筛选程序,所述界面元素的筛选程序被处理器执行时实现如上所述的界面元素的筛选方法的步骤。
[0088] 综上所述,本发明提供一种界面元素的筛选方法、智能终端及存储介质,所述方法包括:窗口初始化,新建一位图用于保存数据;将界面元素添加到新建的元素表中;接收用
户的选取操作,根据所述选取操作在所述位图上绘制目标图形;检测所述元素表中的所有
界面元素,将在所述位图的区域中包含预设颜色的界面元素标记为选中,并添加到新建的
选中表中。本发明在用户需要的情况下,用户在屏幕上绘制目标图形,就可以选中目标图形
内的多项界面元素,以尽量少的操作完成大量对象的选取,方便用户从群体中选择出部分
个体进行所需要的操作,提高了人机交互的便捷性。
[0089] 当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储
于一计算机可读取的存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。
其中所述的存储介质可为存储器、磁碟、光盘等。
[0090] 应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保
护范围。