一种焦点控制方法及装置与流程

文档序号:11157689阅读:673来源:国知局
一种焦点控制方法及装置与制造工艺

本发明属于多媒体控制与显示技术领域,尤其涉及一种焦点控制方法及装置。



背景技术:

焦点:计算机领域中就是指关注的区域,当前光标被激活的位置,用于表明哪个控件被选中,可以被操作。

目前市场上应用焦点的控制是由单个应用自行控制,如果需要统一焦点控制风格,则需每个应用单独实现同一套焦点动画,对于开发与维护都需要非常大的成本。



技术实现要素:

有鉴于此,本发明实施例提供了一种焦点控制方法及装置,以解决现有技术中统一焦点控制风格,需每个应用单独实现同一套焦点动画,对于开发与维护都需要非常大的成本的问题。

第一方面,提供了一种焦点控制方法,包括:

获取智能终端的前台应用的调用指令;

根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合;

获取关于所述应用中的焦点控制指令;

根据所述控件集合及所述焦点控制指令,控制焦点移动。

进一步地,所述获取所述应用中的所有可视控件,构成控件集合还包括:

在所述应用进行布局初始化并设置所述布局的上下文对象之后,获取所述应用中的所有显示控件,构成控件集合。

进一步地,所述根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合包括:

按照获取到可视控件的时间先后顺序,依次将所述可视控件添加到所述控件集合中。

进一步地,所述获取所述应用中的所有可视控件,构成控件集合包括:

若所述可视控件为容器控件时,对所述容器控件中的子控件按窗口面积从小到大进行排列后依次添加到控件集合中。

进一步地,所述焦点控制指令为焦点移动指令,所述根据所述控件集合及所述焦点控制指令,控制焦点移动包括:

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令指示的焦点移动方向,依照就近原则,从所述控件集合中,查找需要获取焦点的第二控件;

获取所述第一控件和第二控件的尺寸以及在所述智能终端页面的坐标位置信息;

根据所述第一控件和第二控件的尺寸以及所述第一控件和第二控件在所述智能终端页面的坐标位置信息,计算所述第一控件到所述第二控件的位置距离;

根据所述第一控件和第二控件在所述智能终端页面的坐标位置信息以及所述第一控件到所述第二控件的位置距离,控制焦点移动。

第二方面,提供了一种焦点控制装置,包括:

第一获取单元,用于获取智能终端的前台应用的调用指令;

第二获取单元,用于根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合;

第三获取单元,用于获取关于所述应用中的焦点控制指令;

控制单元,用于根据所述控件集合及所述焦点控制指令,控制焦点移动。

进一步地,所述第二获取单元还包括:

在所述应用进行布局初始化并设置所述布局的上下文对象之后,获取所述应用中的所有显示控件,构成控件集合。

进一步地,所述第二获取单元包括:

按照获取到可视控件的时间先后顺序,依次将所述可视控件添加到所述控件集合中。

进一步地,所述第二获取单元包括:

若所述可视控件为容器控件时,对所述容器控件中的子控件按窗口面积从小到大进行排列后依次添加到控件集合中。

进一步地,所述根据所述控件集合及所述焦点控制指令,控制焦点移动包括:

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令指示的焦点移动方向,依照就近原则,从所述控件集合中,查找需要获取焦点的第二控件;

获取所述第一控件和第二控件的尺寸以及在所述智能终端页面的坐标位置信息;

根据所述第一控件和第二控件的尺寸以及所述第一控件和第二控件在所述智能终端页面的坐标位置信息,计算所述第一控件到所述第二控件的位置距离;

根据所述第一控件和第二控件在所述智能终端页面的坐标位置信息以及所述第一控件到所述第二控件的位置距离,控制焦点移动。

在本发明的实施例中,通过接收当前活动的应用的调用指令,开始获取应用的所有可显示控件,并将所有可视控件构成控件集合,通过获取应用的焦点控制指令与控件集合,使用焦点跳跃方法来实现该应用中的焦点移动控制。本发明实施例通过直接对当前活动的应用进行控件焦点控制指令获取,并通过焦点跳转方法进行焦点移动的控制,使得在统一焦点控制风格时无需每个应用单独实现同一套焦点动画,大大降低了对全局焦点控制的开发与维护成本。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的焦点控制方法的实现流程图;

图2是本发明实施例提供的智能终端页面布局示例图;

图3是将本发明应用到智能电视终端的具体处理流程图;

图4是本发明实施例提供的焦点控制装置结构框图;

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

本发明实施例获取智能终端的前台应用的调用指令;根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合;获取关于所述应用中的焦点控制指令;根据所述控件集合及所述焦点控制指令,控制焦点移动。

图1示出了本发明实施例一提供的焦点控制方法的实现流程,详述如下:

在S101中,获取智能终端的前台应用的调用指令。

在本发明实施例中,为了统一焦点控制风格,对所有应用采用统一的焦点控制方法,应用无需单独设计焦点动画,只需要在应用启动为前台应用后调用本法提供的方法或装置进行焦点移动控制即可。

在本发明实施例中,利用本发明提供的焦点控制方法创建一个焦点控制插件,并将其应用在智能电视终端。在智能电视终端应用启动并成为前台应用后,该应用只需发送一个调用指令至焦点控制插件,由焦点控制插件接收到调用指令后对该应用中的焦点移动进行统一控制。

在S102中,根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合。

在构成控件集合时,按照获取到控件的时间先后顺序,依次将所述控件添加到所述控件集合中。

在S102之前,所述焦点控制方法还包括:

在所述应用进行布局初始化并设置所述布局的上下文对象之后,获取所述应用中的所有显示控件,构成控件集合。

所述初始化所述布局,是指在应用启动时,初始化函数中初始化线条对象,背景图片,线条样式等,使应用窗口页面布局的各项参数恢复为默认设置参数。

所述的上下文对象是一个用于实现关于控件环境的整体信息的一个接口,上下文对象允许访问到控件特殊的资源和类,同时也可以实现到控件级别的操作。上下文对象在页面初始化开始的时候被创建,用于保存对整个控件资源的引用,在实际应用的时候,通常会把控件上下文对象当做全局对象的引用来使用。

通过设置所述应用的上下文对象,把上下文对象当做全局对象的引用,以获取所有可在智能终端页面显示的控件。

在S103中,获取关于所述应用中的焦点控制指令。

当用户操作焦点切换时,系统会发出相应的焦点控制指令,用于控制焦点的移动。此时,通过获取并分析关于所述应用中的焦点控制指令,即可获取到焦点位置改变前后的控件信息。

在S104中,根据所述控件集合及所述焦点控制指令,控制焦点移动。

所述焦点控制指令为焦点移动指令,在获取到所述控件集合及所述焦点控制指令后,根据焦点移动指令查找出焦点移动前后所处的控件及控件的尺寸和坐标位置信息,并根据焦点移动前后所处的控件及控件的尺寸和坐标位置信息计算出焦点移动前后所处的控件的位置距离,最终实现控制焦点移动。

在S102中包括:

按照获取到可视控件的时间先后顺序,依次将所述可视控件添加到所述控件集合中。

若所述可视控件为容器控件时,对所述容器控件中的子控件按窗口面积从小到大进行排列后依次添加到控件集合中。

如图2对应的实施例智能终端页面布局示例图,控件中存在一类特殊的控件——容器控件,即控件中还含有子控件的控件,如布局容器、网格容器等。

当获取到的控件为容器控件时,对容器控件中的子控件窗口面积范围从小到大进行排列,并从小到大依次添加到控件集合中。

在S104中所述焦点控制指令为焦点移动指令,S104中包括:

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令指示的焦点移动方向,依照就近原则,从所述控件集合中,查找需要获取焦点的第二控件;

获取所述第一控件和第二控件的尺寸以及在所述智能终端页面的坐标位置信息;

根据所述第一控件和第二控件的尺寸以及所述第一控件和第二控件在所述智能终端页面的坐标位置信息,计算所述第一控件到所述第二控件的位置距离;

根据所述第一控件和第二控件在所述智能终端页面的坐标位置信息以及所述第一控件到所述第二控件的位置距离,控制焦点移动。

在获取到焦点控制指令后,先获取位于当前焦点位置的第一控件,再根据显示终端页面布局的就近原则,根据所述焦点移动指令指示的焦点移动方向,对需要获取焦点的即焦点位置改变后所处的第二控件进行查找,并获取第一控件和第二控件的具体尺寸大小以及坐标位置。

所述的就近原则,是指依照与第一控件位置距离从近至远的顺序,在页面布局中依次查找所需控件。

所述的坐标位置信息是指,以屏幕上边缘和左边缘的交点,即屏幕的左上角顶点为原点,以左边缘为x轴,上边缘为y轴,建立x,y坐标系,其中x是指控件与屏幕上边缘距离,y是指控件与屏幕左边缘距离,所述的坐标位置信息即为控件在该x,y坐标系的坐标位置。

在根据所述第一控件和第二控件的尺寸以及所述第一控件和第二控件在所述智能终端页面的坐标位置信息,计算所述第一控件到所述第二控件的位置距离中包括:

由所述第一控件和第二控件的尺寸及所述第一控件和第二控件在所述显示终端页面的坐标位置信息,分别计算出所述第一控件及所述第二控件的所有边缘的坐标位置;

分别计算所述第一控件所有边缘到所述第二控件所有边缘之间的位置距离;

选取所述各边缘之间的位置距离中最短距离作为所述第一控件到所述第二控件的位置距离。

如:若所述的控件为矩形,即拥有上下左右四个边缘时,计算所述第一控件所有边缘到所述第二控件所有边缘之间的位置距离便有4*4共16个位置距离,在计算所述第一控件到所述第二控件的位置距离时,以16个距离中最短距离做为最终值。

在获取到所述第一控件和第二控件在所述智能终端页面的坐标位置信息以及所述第一控件到所述第二控件的位置距离后,根据所述第一控件和所述第二控件坐标位置和位置距离设置两个控件之间的跳转动作,实现焦点动画即焦点移动,最终实现焦点控制的风格统一。

基于图3对应的实施例,是利用本发明所述方法创建了一个焦点控制插件,并将本发明应用到智能电视终端的实施例,详述如下:

在S301中,在应用启动并成为前台应用时,应用发出调用指令,对焦点控制插件进行调用,此时,焦点控制插件获取到相应的调用指令。

在S302中,启动初始化函数,对应用的窗口页面布局的线条对象,背景图片,线条样式等进行初始化,使应用窗口页面布局的各项参数恢复为默认设置参数。

在S303中,设置应用的上下文对象,通过设置所述应用的上下文对象,把上下文对象当做全局对象的引用,来获取所有可在智能终端页面显示的控件。

在S304中,获取智能电视终端可页面显示的控件,依照将获取到的所述控件依次排列放置在控件集合中,其中,若获取到容器控件,对容器控件中的子控件窗口面积范围从小到大进行排列,并从小到大依次添加到控件集合中。

在S305中,当用户操作焦点切换时,系统会发出相应的焦点移动指令,用于控制焦点的移动。若获取到了焦点移动指令,则执行步骤S306,若没有获取到焦点移动指令,则继续执行步骤S305。

在S306中,以屏幕上边缘和左边缘的交点,即屏幕的左上角顶点为原点,以左边缘为x轴,上边缘为y轴,建立x,y坐标系。

当获取到焦点控制指令时,先获取位置改变前焦点所处的第一控件,再依照与第一控件位置距离从近至远的顺序,根据所述焦点移动指令指示的焦点移动方向,在页面布局中依次查找焦点位置改变后所在的第二控件,并获取第一控件和第二控件的具体尺寸大小以及坐标位置。

在S307中,由第一、第二控件的尺寸及x,y坐标位置,分别计算出第一控件及所述第二控件的所有边缘的x,y坐标位置。智能电视终端中控件窗口为矩形,即拥有上下左右四个边缘,计算第一控件所有边缘到第二控件所有边缘之间的位置距离,共4*4共16个位置距离。以16个距离中最短距离为第一控件到第二控件的位置距离最终值。

在S308中,根据第一、第二控件在智能电视终端页面中的x,y坐标位置以及位置距离设置两个控件之间的跳转动作,实现焦点动画即焦点移动,最终实现焦点控制的风格统一。

在本发明实施例中,在获取到调用指令后,通过设置上下文对象获取所有可在智能终端页面显示的控件,并将其构成一个控件集合,再实时获取焦点控制指令,并对位置变化前后焦点所处的控件进行尺寸及位置数据采集,利用采集到的尺寸与位置来计算位置变化前后所处的控件的位置距离,最终通过焦点跳转方法来实现全局焦点移动的统一管理。在本发明实施例中,通过直接对当前活动应用进行焦点移动控制,对控件的焦点位置不再是由单个应用控制而是统一控制,在实现统一焦点控制风格时,只需要将本发明进行应用即可,无需应用实施焦点动画单独开发,使得统一焦点控制风格的开发及维护成本得到了极大地降低。

对应于上文实施例所述的焦点方法,图4示出了本发明实施例提供的焦点控制装置的结构框图,参照图4,该装置包括:

第一获取单元41,用于获取智能终端的前台应用的调用指令;

第二获取单元42,用于根据所述调用指令,获取所述应用中的所有可视控件,构成控件集合;

第三获取单元43,用于获取关于所述应用中的焦点控制指令;

控制单元44,用于根据所述控件集合及所述焦点控制指令,控制焦点移动。

进一步地,所述第二获取单元42还包括:

在所述应用进行布局初始化并设置所述布局的上下文对象之后,获取所述应用中的所有显示控件,构成控件集合。

进一步地,所述第二获取单元42包括:

按照获取到可视控件的时间先后顺序,依次将所述可视控件添加到所述控件集合中。

进一步地,所述第二获取单元42包括:

若所述可视控件为容器控件时,对所述容器控件中的子控件按窗口面积从小到大进行排列后依次添加到控件集合中。

进一步地,所述根据所述控件集合及所述焦点控制指令,控制焦点移动包括:

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令,从所述控件集合中查找位于当前焦点位置的第一控件;

根据所述焦点移动指令指示的焦点移动方向,依照就近原则,从所述控件集合中,查找需要获取焦点的第二控件;

获取所述第一控件和第二控件的尺寸以及在所述智能终端页面的坐标位置信息;

根据所述第一控件和第二控件的尺寸以及所述第一控件和第二控件在所述智能终端页面的坐标位置信息,计算所述第一控件到所述第二控件的位置距离;

根据所述第一控件和第二控件在所述智能终端页面的坐标位置信息以及所述第一控件到所述第二控件的位置距离,控制焦点移动。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

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

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

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

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

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

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