CN108475270A - 移动用户界面 - Google Patents
移动用户界面 Download PDFInfo
- Publication number
- CN108475270A CN108475270A CN201680069631.6A CN201680069631A CN108475270A CN 108475270 A CN108475270 A CN 108475270A CN 201680069631 A CN201680069631 A CN 201680069631A CN 108475270 A CN108475270 A CN 108475270A
- Authority
- CN
- China
- Prior art keywords
- level
- data
- viewing area
- selection
- project
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/904—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种用于有效呈现和允许在计算设备上快速导航数据的方法,可以包括在计算设备处生成包括静态布局的图形用户界面,静态布局包括显示区和第一级别交互区,显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且第一级别交互区具有多个子区;接收用户输入;确定接收的用户输入是否是第一级别交互区的多个子区中的一个的选择;响应于确定接收的用户输入是多个子区中的一个的选择,更新显示区以包括与多个子区中的一个的选择对应的第二级别子组;确定接收的用户输入是否是显示区的选择;并且响应于确定用户输入是显示区的选择,更新显示区以包括与第二级别子组对应的第三级别项目。本公开还可以包括执行以上方法的动作的相应系统、装置和计算机程序。
Description
背景技术
本公开涉及计算机生成的用户界面。更具体地说,本公开涉及用于有效地组织、呈现具有多个分级级别的数据和提供与具有多个分级级别的数据的交互的方法和系统。更具体地,一些实施方式涉及用于在移动设备上提供新闻的用户界面。
计算机应用有时被用于呈现数据,尤其是能够被分级地组织为例如多个级别或数据树的数据。分级数据可以包括被分类的新闻文章、新闻事件和特定文章。例如,新闻来源通常会以列表或大纲格式呈现大量的文本和图形信息,该列表或大纲格式包括类别列表和那些类别中的新闻文章。这些用于呈现分级数据(例如新闻文章)的现有解决方案需要大量计算资源和互联网带宽来下载和导航(navigate)分级数据,这可能使具有有限带宽和处理能力的客户端设备负担过重。
发明内容
本公开涉及用于有效地组织、呈现具有多个级别的数据和提供与具有多个级别的数据的交互的系统和方法。此处描述的技术可以包括方法,该方法包括在图形用户界面上提供显示区,该图形用户界面既可以静态定位又可以根据用户在图形用户界面的特定区域上的输入利用各个级别的分级数据被动态地更新。类似地,这些方法可以允许分级数据的访问和导航的方便以及通过图形用户界面元素的策略性布置来快速检索和显示分级数据。
大体上,根据本公开中描述的主题的一个创新方面,可以在包括处理器和存储指令的内存(memory)的系统中实现,当该指令被处理器执行时使得系统生成包括静态布局的图形用户界面,静态布局包括显示区和第一级别交互区,显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且第一级别交互区具有多个子区;接收用户输入;确定接收的用户输入是否是第一级别交互区的多个子区中的一个的选择;响应于确定接收的用户输入是多个子区中的一个的选择,更新显示区以包括与多个子区中的一个的选择对应的第二级别子组;确定接收的用户输入是否是显示区的选择;并且响应于用户输入是显示区的选择的确定,更新显示区以包括与第二级别子组对应的第三级别项目。
大体上,本公开中描述的主题的另一创新方面可以体现在以下方法中,该方法包括在计算设备处生成包括静态布局的图形用户界面,静态布局包括显示区和第一级别交互区,显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且第一级别交互区具有多个子区;接收用户输入;确定接收的用户输入是否是第一级别交互区的多个子区中的一个的选择;响应于确定接收的用户输入是多个子区中的一个的选择,更新显示区以包括与多个子区中的一个的选择对应的第二级别子组;确定接收的用户输入是否是显示区的选择;并且响应于确定用户输入是显示区的选择,更新显示区以包括与第二级别子组对应的第三级别项目。
这些和其他实施方式可以各自可选地包括以下特征中的一个或多个。例如,特征可以包括:从数据服务器检索数据集合,该数据集合包括第一级别组、第二级别子组和第三级别项目,第三级别项目是文章,第二级别子组是与公共事件相关的文章集群,并且第一级别组是与公共类别相关的一组文章集群;其中确定接收的用户输入是否是多个子区中的一个的选择包括确定用户输入是否包括穿越(over)第一级别交互区的擦动输入;其中显示区包括信息区域和选择区域,信息区域显示文本信息,并且选择区域显示与文本信息的对应图像;其中选择区域位于图形用户界面的竖直边缘附近;其中图形用户界面包括多个显示区,并且其中更新显示区以包括第三级别项目包括利用不同的数据更新多个显示区中的每一个。附加特征可以包括:基于与第三级别项目相关联的元数据标签,确定第二级别子组内的第三级别项目的排名;确定是否存在与第三级别项目相关联的图像;以及如果第三级别项目的排名满足阈值,则选择第三级别项目用于在图形用户界面中显示。其他特征还包括显示区具有选择区域和信息区域,选择区域位于图形用户界面的第一竖直边缘附近,并且其中方法还包括确定用户输入是否包括在选择区域开始并且在信息区域结束的水平刷动,并且响应于水平刷动更新显示区以将选择区域移动到位于图形用户界面的第二竖直边缘附近。
这些方面中的一个或多个的其他实施方式包括被配置为执行该方法的动作的相应系统、装置和计算机程序,其被编码在计算机存储设备上。
这些实施方式在许多方面是特别有利的。例如,此处描述的元件和技术的实施方式和组合特别有益,因为它们允许大量信息的快速导航和消费(consumption),特别是在小尺寸显示器上;减少所需的计算资源;并减少从数据服务器检索分级数据所需的数据通信带宽。这些实施方式也是有利的,因为它们提供了适合于需要呈现的信息量的用户界面,提供数据用于轻松的分级级别遍历并且允许高级别擦动以在高级别话题(topic)之间轻松转换。例如,此处描述的技术允许计算设备有效地呈现原本难以消费和导航的来自许多类别和来源的大量数据。
然而,应该理解的是,上述特征和优点不是包括一切的,并且许多附加的特征和优点是可以预期的并且落入本公开的范围内。此外,应该理解,本公开中使用的语言主要是为了可读性和指导性目的选择的,并非为了限制此处公开的主题的范围。
附图说明
在附图的图中通过示例而非限制的方式示出了本公开,其中相同的参考数字用于指代相似的元素。
图1是用于有效地组织、呈现分级数据和提供与分级数据的交互的示例方法的流程图。
图2是用于响应于接收高级交互区擦动而更新显示区的示例方法的流程图。
图3是用于接收和处理用于客户端设备上的呈现和导航的数据的示例方法的流程图。
图4是用于响应于接收显示区选择而用低级别数据更新显示区的示例方法的流程图。
图5是用于响应于水平选择区域刷动来更新显示区以在右手和左手的布局之间切换的示例方法的流程图。
图6A-8B是用于有效地组织、呈现分级数据和提供与分级数据的交互的示例图形用户界面的图形表示。
图9是示出用于有效地组织、呈现分级数据和提供与分级数据的交互的示例系统的高级框图。
图10是示出示例计算系统的框图。
具体实施方式
公开了用于有效地组织、呈现分级数据和提供与分级数据的交互的系统、方法和界面。尽管现在在客户端-服务器系统的背景下描述了本公开的系统、方法和界面,但是应当理解的是,此处描述的技术可以应用于除了通过网络可操作地连接的客户端-服务器系统以外的系统。例如,客户端设备、第三方服务器、数据服务器等可以提供此处描述的功能中的一些或全部,并且可以采用服务器集群以提供这样的功能。
尽管此处描述的用于有效地组织、呈现分级数据和提供与分级数据的交互的技术在多个示例中被呈现,主要在新闻文章的示例中被呈现,但是应该理解,许多其他类型的分级数据是可能的并且可以预期的。例如,如此处所定义的分级数据可以包括能够被组织或分类为多个级别、组或数据树的任何数据,例如照片、社交网络数据、产品信息、媒体(电影、音乐和其他视听)信息等等。
多个级别的数据包括至少两个级别的分级数据。此处为了说明的目的,描述高级别、中级别和低级别。高级别组包括一个或多个中级别项目或子组。例如,高级别组可以是一种类别,例如在新闻文章的例子中,为头条、世界、商业、政治等新闻,其可以包括由事件或话题组织的文章或文章组。高级别组数据可以包括高级别组的可显示信息、高级别组的元数据和/或高级别组内项目的数据。中级别子组属于高级别组,并且也可以包括一个或多个低级别项目。例如,中级别子组可以是项目集群,例如在新闻文章的例子中,为基于事件、个人或组织的文章组。中级别数据可以包括中级别子组的不可显示和/或可显示信息、元数据、和/或中级别子组内项目的数据。低级别项目属于中级别子组并且可以包括任何类型的内容,例如文章(例如新闻文章)、媒体(音频、视频、游戏等)、社交网络信息、照片、产品等等。低级别数据(例如,对应于或表示低级别项目的数据)可以包括低级别项目的元数据、可显示和/或不可显示信息。数据集合或数据集包含一个或多个高级别组、中级别子组或低级别项目的部分或全部数据。尽管本公开以这些术语描述了多个级别,但应该理解的是,此处所描述的技术可应用于其他实施方式、其他数量的级别等。
此处描述的技术是特别有益的,因为它们允许在有限的显示器(例如,计算设备上的屏幕)上的大量信息的快速导航和消费,减少所需的计算资源(例如结果是低延迟),并减少使用的数据通信带宽。例如,此处描述的技术允许具有非常有限的计算资源和非常有限的显示器尺寸的计算设备有效地呈现来自许多类别和文章的新闻,同时使用有限数量的数据(例如,许多移动设备具有缓慢的数据连接或有限的蜂窝数据计划,只允许下载少量数据),该计算设备例如便宜的智能手机或可穿戴设备(例如,智能手表)。
另外,此处描述的技术还允许用户通过以用户可以快速导航、查看和选择元素的方式组织图形用户界面的元素和交互来快速消费分级数据。本技术的一些实施方式通过提供在显示器的第一边缘处的可擦动(scrubbable)高级别选择条、在显示器的第二边缘处的中级别交互区域(area)以及切换显示器的哪一侧包括中级别交互区域的能力来实现这些尤其针对触摸屏的目标。
此外,此处描述的技术的一些实施方式考虑到费兹定律(Fitts's Law)而减少了导航图形元素(特别是分级数据)所需的时间,该定律指出人选择对象(例如,在图形用户界面上)所需的时间量与该对象离指示器(例如,用于选择对象的设备,例如手指、触笔或计算机光标)当前位置的距离成正比,并且与该对象的尺寸成反比。照此,此处描述的技术的实施方式通过结合沿着图形用户界面的第一边缘(例如,底部)定位的可擦动高级别交互区(region)602以及沿着图形用户界面的可选第二边缘(例如,左侧或右侧)定位的中级别选择区,可以将费兹定律应用于分级数据的导航,尤其是使用小型触摸屏(例如,可用于单手中,例如移动电话或可穿戴设备)。通过结合这些元素,不仅可以更快地选择对象,而且被显示的数据保持不被指示器(例如,触摸屏上的手指)遮挡。本技术的这些和其他实施方式也在本说明书中的其他地方进行了描述。
此处描述的技术的一些实施方式还通过将图形元素保持在一致位置、避开动画并且避免重复或多余数据的呈现来实现分级数据的快速导航的目标。例如,一些实施方式包括数据可以显示在其中的固定网格,其不允许多于网格中能够显示的数据被显示或检索,这样使滚动既不是必需的也是被防止的。特别地,防止滚动是有利的,因为滚动天生会改变信息的位置,以致于用户的眼睛必须扫视图形用户界面以找到信息。例如,当用户选择特定的高级别组时,用户应该自然地知道与特定的高级别组相关的每种类型的信息所在的位置,而不必花费时间在图形用户界面上搜索。另外,在一些情况下,选择的显示区保持静止,而界面的其他区域改变以反映选择的信息。例如,当选择特定中级别子组时,与该中级别子组对应的低级别数据(例如,在数据树/级别中该子组之下/之内)改变,而被显示用于中级别子组的数据在界面上保持不变。在一些情况下,显示区被安排为显示与多个中级别子组对应的数据的固定网格,当选择特定的中级别子组时,在与未被选择的中级别子组对应的数据的顶部,扩展与选择的中级别子组对应的低级别数据,或者替代与未被选择的中级别子组对应的数据,扩展与选择的中级别子组的对应的低级别数据。另外,如此处所描述的,其中数据显示和选择区域被显示在固定网格中的实施方式允许信息被用户快速读取和导航,因为界面可以在图形用户界面上相同的图形位置显示相同的信息和选择。
应该理解的是,尽管数据呈现模块908被描述为可在客户端设备906上操作以接收和组织分级数据,但是其一些或全部功能可以在一个或多个服务器,例如数据服务器916,上实施。类似地,虽然数据分析引擎918被描述为可在数据服务器916上操作以检索和处理分级数据,然后将分级数据发送到客户端设备906上的数据呈现模块908,但是数据分析引擎918的一些或全部功能可以在客户端设备906或系统900的其他组件上操作。另外,第三方应用的一些或全部功能可以例如在数据服务器916上操作。
图1是用于有效地组织、呈现分级数据和提供与分级数据的交互的示例方法100的流程图。在102处,数据呈现模块908(数据呈现模块908及其组件1020、1022、1024和1026在图9和10中示出并且在下面更详细地描述)生成用于在客户端设备906上显示的动态图形界面,该动态图形界面包括用于显示多个数据集合的定义的布局,该界面包括高级别交互区602和显示区608、610、612和614。定义的布局可以包括任意数量的显示和/或交互区。在一些实施方式中,显示和/或交互区保持静态地位于图形界面内,并且只有那些区内的内容被数据呈现模块908改变。例如,显示区608、610、612和614可以被组织成显示选择的级别的数据集合的网格。参考图6-8B描述了定义的布局示例,尽管此处所描述的技术中其他配置是可能的并且是可以预期的。
在104处,接口模块1022(例如,如以下参考图9和10所描述的)从客户端设备906接收输入(例如,经由输入设备1005)并且在框106、110和114处接口模块1022确定什么类型的输入被接收以及响应于用户输入采取什么动作。一旦在106、110和114处确定了用户输入,接口模块1022分别执行108、112和116中的动作。一旦接口模块1022在106、110或114处未能识别出用户输入,和/或在108、112和116处执行的动作被完成,方法100可以再次返回104以等待用户输入。例如,在框104之后,方法100继续至框106。
在106处,接口模块1022确定输入是否是高级别交互区擦动(scrub)。擦动可以包括穿越图形用户界面的指示器(例如,手指、触笔、光标或其他输入设备)的任意移动或滑动。例如,在图6A-6D中示出了识别擦动输入并且响应地更新用户界面。尽管接口模块1022可以在106处记录擦动,但是在一些实施方式中,它也可以或替代性地记录从高级别交互区602选择高级别组的任意输入(例如,点击、悬停、触摸屏上的触摸等)。可擦动高级别交互区602提供准确的选择区,其在图形用户界面上需要非常小的区域,同时保持快速的可交互性。例如,可擦动交互区602不需要用户准确地选择小的区域(如上所述,根据费兹定律由此需要额外的时间/努力),因此可擦动区可以更小,同时通过跟踪移动而不是唯一的位置,仍然允许对象的快速选择。此处其他地方进一步详细地描述高级交互区示例602。
如果接口模块1022在106处确定输入是高级别交互区擦动,则方法100在框108继续。在框108处,如此处所描述的,接口模块1022连同数据呈现模块的其他组件,响应于在106处确定输入包括高级别交互区擦动,用对应于选择的高级别组的中级别数据来更新显示区。中级别数据可以反映中级别子组内的低级别项目。在一些实施方式中,中级别数据可以是子组内低级别项目的概要。在一些实施方式中,中级别数据可以包括子组内低级别项目之一的低级别数据。例如,在一些情况下,中级别子组可以是描述新闻事件的新闻文章集群,并且该组的中级别数据可以是事件的概要,或者如下文更详细描述的,中级别数据可以包括来自选择的文章(例如,用于呈现的指定优先文章)的信息。参考图2进一步详细地描述在108处,响应于接收到高级交互区擦动/选择,更新显示区608、610、612和614。
在框106和108的示例性实施方式中,用户可以穿越触摸屏(例如,如图6A-8B所示的输入设备1008和输出设备1010的组合)底部的高级别交互区602擦动其拇指以便选择新闻类别。数据呈现模块908如此处所描述的那样记录并识别擦动,并如参照此处的图6A-6D描述的那样,通过检索分级数据集和显示数据来更新区608、610、612和614以反映通过擦动选择的新闻类别。显示区608、610、612和614中的每一个可以包括相应于选择的高级别组或新闻类别内子组或文章集群的图像和文本。
如果接口模块1022在框106中确定输入不是高级别交互区擦动,则方法100继续到框110。在框110处,接口模块1022确定在104处接收的输入是否包括显示区选择。例如,图7A-7C中示出了识别输入和更新用户界面。显示区(例如,608、610、612或614)可以包括图形用户界面600的区域,其可以被划分为用于显示数据的信息区域814和用于选择该数据的选择区域816。例如,信息区域814可以显示中级别或低级别数据和/或选择区域816可以选择中级别子组。另外,在显示区608、610、612和614被组织成网格或一系列行的情况下,选择区域816(此处816a-816d可以被简称为814)可以被组织成选择栏822(此处822a和822b可以被简称为822)并且信息区域(此处814a-814d可以被简称为814)可以被组织成信息栏(此处820a和820b可以被简称为820)。
如果接口模块1022在110处确定接收的输入包括显示区选择,则方法100进行到框112。在框112处,接口模块1022响应于在110处确定用户输入包括显示区选择,用对应于选择的中级别子组的低级别数据更新显示区。例如,在一些实施方式中,低级别数据可以包括关于新闻文章集群内的单个文章的信息。参考图4进一步详细地描述响应于接收显示区选择而用低级别数据更新显示区608、610、612和614。
在框104、110和112的实施方式示例中,用户可以用其拇指在触摸屏上选择显示区(例如,通过显示区内图像上的特定的选择区域816)以选择新闻集群。数据呈现模块908如此处所描述的那样记录并识别显示区选择,并更新显示区608、610、612和614以反映由输入选择的新闻集群。显示区608、610、612和614可以被更新以在每个显示区608、610、612和614中反映新闻项目/文章。然后,如果需要,用户可以通过再次选择显示区取消选择显示区/新闻集群,例如,用户可以第二次轻击选择区域916以返回至被显示的中级别子组列表。
如果接口模块1022在110处确定接收的输入不包括显示区选择,则方法100进行到框114。在框114处,接口模块1022确定在104处接收的输入是否包括水平选择区域刷动(swipe)。刷动可以包括穿越图形界面的区域的指示器的任意移动或滑动。特别地,水平选择区域刷动包括在选择区域816处开始,穿越在图形用户界面水平滑动指示器。例如,图8A-8B中示出了水平选择区域刷动和相应的用户界面的更新。为了使接口模块1022区分在106处的高级别交互区擦动和在框114处的水平选择区域刷动(例如,当高级别交互区602被水平地定向时),接口模块1022可以确定擦动的位置与刷动的位置。如在106处确定的擦动,位于(近似或精确地)高级别交互区602上。如在114处确定的刷动位于(近似或精确地)位于显示区上。例如,刷动可以包括选择和拖动在此处其他地方描述的选择区域/栏816/822。
如果接口模块1022在114确定在104接收的输入是水平选择区域刷动,则方法100进行到框116。在框116处,接口模块1022响应于在114处确定输入包括选择区域的水平刷动,更新显示区以从右手布局切换到左手布局(或相反)。在一些实施方式中,如上所述,显示区可以包括信息和选择栏820和822,其可以被重新安排以提供图形界面的左手或右手布局。例如,可以拖动/刷动选择栏822以将显示区从右手布局(例如,如图8A中所示)切换到左手布局(例如,如图8B中所示),以当图形界面位于触摸屏设备(例如,客户端设备906)上时,提供更轻松的输入访问,并且防止与触摸屏交互的手指对信息区域814的遮挡。参考图5、8A和8B进一步详细地描述响应于水平选择区域刷动来更新显示区608、610、612和614以在右手和左手布局之间切换。另一方面,如果接口模块1022在114处确定在104处接收的输入不是水平选择区域刷动,则方法100循环至步骤104。
图2是用于响应于接收高级别交互区擦动/选择而更新显示区608、610、612和614的方法示例200的流程图。方法200为图1中所示的框106和108提供进一步的细节。在202处,接口模块1022生成动态图形界面,动态图形界面包括用于显示多个数据集合的定义的布局,数据集合包括多个级别,并且在204处,接口模块1022提供用于在客户端设备906上显示的包括子区的高级别交互区602,每个子区对应于一个高级别组。
图6中显示了高级交互区示例602。如图所示,高级别交互区602可静态地位于图形界面600的底部附近以在触摸屏客户端设备上提供手指(例如,如指示器630所示)的轻松访问(例如,如图6A-6D所示)。例如,图6中所示的高级别交互区602的布置有利地允许用户使用一只手通过沿着高级别交互区602滑动拇指来擦动/选择高级别组。另外,如图所示,高级别交互区602可以包括多个子区604a-604h。例如,子区可以对应于类别或主题。在图6中描绘的示例中,每个子区涉及新闻类别(例如,头条新闻、世界、美国、商业、科技、科学、健康、娱乐等)。在子区和高级别交互区602静态定位的情况下,用户有利地不必为了选择子区/高级别组而查看高级别交互区602或子区。在一些实施方式中,界面中显示的特定的子区604a-604h可以是可定制的或可扩展的。此外,在一些情况下,图形界面可以包括高级别组选择指示器606,其显示哪个高级别组(例如,来自子区604a-604h的)被选择。尽管示出了八个子区604a-604h,但可以使用更少或额外的子区而不偏离此处描述的技术的范围。应该理解,尽管在图6中以特定配置来显示高级别交互区602、子区604a-604h和选择指示器606,但是此处其他实施方式也是可能的并且可以预期的,例如,高级别交互区602可以沿着图形用户界面的左侧或右侧被竖直地定向,或者选择指示器可以仅包括突出显示选择的子区。
图6A示出了示例初始图形用户界面600,其中接口模块1022正在等待接收用户输入。例如,由子区604a表示的类别可以最初显示在图形用户界面600上。图6B示出了通过指示器630接收到输入时的示例图形用户界面600,如图所示,子区604a可以被突出显示(或以其他方式更改)以反映它被选择。类似地,选择指示器606示出与选择的子区604a对应的类别。图6C示出了示例图形用户界面600,其中擦动输入正在被接收。例如,指示器630正在穿越高级别交互区602擦动。在图6C中示出的示例中,接口模块1022可以识别擦动,但等待指示器在或大致在特定的子区上停顿或减速。
图6D示出了示例图形用户界面600,其中接口模块1022已经识别出擦动输入选择了子区604b。在描绘的实施方式中,子区604d对应于世界新闻类别,其可以被显示在选择指示器606中。另外,在图6D中可以看到,每个显示区608、610、612和614以及它们各自的元素一直保持静态地位于图形用户界面600中。然而,显示区608、610、612、614内显示的信息已被改变以反映被选择的子区604b。在一些实施方式中,接口模块1022可以识别输入为选择子区604b并因此识别世界新闻类别,并且可以(例如,如此处所述,经由数据处理机(handler)1020、通信模块1002和网络902)与数据分析引擎918通信,以检索包括用于被选择的高级别组(例如,在子区604b处选择的类别)的分级数据的数据集。
返回图2,在206处,数据处理机1020从数据服务器916中检索数据集合。例如,数据处理机1020可以响应于某个信号而检索数据集合,该信号可以包括网页或网络应用的打开,应用的运行或用户输入的接收。例如,在一些实施方式中,接口模块1022接收用户输入,响应于此,它向数据处理机1020发信号以从数据服务器916检索数据集合(例如,经由图9中的网络902)。
在一些实施方式中,数据处理机1020检索用于由子区604a-604h表示的组的数据集合(例如,对应于每个高级别组的高、中和低级别的数据)。在一些实施方式中,数据处理机1020仅检索与被选择的高级别组对应的数据集合。在一些实施方式中,数据处理机1020仅在有必要在图形界面上显示信息时才检索数据(例如,中级别数据、低级别数据等)。例如,如果用户已经选择了特定的高级别组和中级别子组,则数据处理机1020可以仅检索在界面上显示被选择的数据所需的数据(例如,显示与选择的中级别子组的可用显示区对应的低级别项目的数目所需的数据)。
数据处理机1020可以将从数据服务器916检索的数据发送到接口模块1022用于进一步的处理,或者在一些情况下,其可以将检索的数据存储在数据存储1012中供数据呈现模块908的其他组件访问。
在208处,接口模块1022提供显示区608、610、612和614,这些区具有用于在客户端设备906上显示的定义的布局,每个显示区被配置为显示中级别子组的中级别数据。例如,接口模块1022通过数据处理机1020访问存储在数据存储1012中的数据集1014,并且使用数据集在显示区608、610、612和614中生成界面。如此处其他地方所述,中级别数据反映了中级别子组的内容。例如,每个显示区显示高级别组中的每个中级别子组的中级别数据。图6-8B中示出了显示区608、610、612和614的多个示例。在图6A-6D描绘的实施方式中,每个显示区608、610、612和614显示中级别组的中级别数据。例如,新闻数据被显示在示例界面600中,并且每个中级别组对应于选择的高级别组604a“头条新闻”中的事件。
如图6A-8B所示的定义的布局可以包括一个或多个显示区608、610、612和614,这些显示区可以是如在显示区的一栏中的彼此堆叠的矩形区。在一些情况下,显示区608、610、612和614如图6A-8B中的括号所示的那样被约束。显示区608、610、612和614可以从图形用户界面的左侧延伸到右侧,并且可以被分解为为组成元素,例如信息区域814和选择区域816。另外,信息区域814可以被进一步分解为用于显示信息片段的一个或多个区域。例如,图7A-7C中显示的标题702a、来源704a、主题706a、类别710a等可以被显示在信息区域814的特定区域中。在一些实施方式中,定义的布局包括位于图形用户界面的顶部附近的选择指示器606(例如,如图6A-8B所示的600、700或800)、位于图形用户界面的底部附近的高级别交互区602、以及填充在选择指示器606和高级别交互区602之间的区域的几个(例如,4-6个)显示区608、610、612和614。
回到图2,在210处,界面模块1022接收包括穿越高级别交互区602的擦动的用户输入,该擦动反映对子区/高级别组的选择,以及在212处,响应于接收擦动输入,接口模块1022更新显示区608、610、612和614以包括与所选择的高级别组对应的中级别数据,如此处更详细描述的那样。
图3是用于接收和处理用于在客户端设备906上呈现和导航的数据的示例方法300的流程图。在302处,数据处理机1020从数据服务器916接收数据,如以上参考图2中的框206描述的那样。应当理解的是,由数据处理机1020检索的数据集可以已经(例如,在由数据处理机1020下载之前)被根据某些准则分类为高、中和低级别,和/或被数据分析引擎918标记(如图9所示)。具体地说,数据集应当在被数据处理机1020接收之前被数据分析引擎918处理,这样繁重的处理不由数据呈现模块908执行。相应地,尽管由数据分析引擎918执行的一些或全部处理可以由数据呈现模块908执行,方法300主要描述为好像数据集已经被数据分析引擎918处理然后被数据呈现模块908检索以供使用。另外,应当理解的是,参考数据呈现模块908描述的附加操作和功能可以由数据分析引擎918执行。
在304处,归类模块1024可以访问由数据处理机1020检索的数据集并将数据分类为高级别组、中级别子组和低级别项目。在一些实施方式中,高、中和低级别数据包括标签(例如,如同由数据分析引擎918标记的那样并被包括在数据项的元数据中),该标签指示每个低级别项目的数据的排名、级别(高、中、低等等),和/或指示每个项目属于哪个分级组或子组。例如,低级别项目可以包括指示该项目属于特定中级别子组和特定高级别组的标签。归类模块1024可以根据标签将这些数据项分类为中级别子组和高级别组。
在306处,排序模块1026处理经分类的数据集以确定要在每个高级别组内显示的中级别子组(例如,如从归类模块1024接收到的或在客户端设备906上的内存中的)。在一些实施方式中,由数据处理机1020检索的数据集仅包括与界面中显示区608、610、612和614的数量对应的中级别子组的数量。例如,在图6所示的示例中,仅表现了四个显示区608、610、612和614,因此与(例如,被标记为属于)每个高级别组中的最多四个中级别子组对应的数据从数据服务器916被检索。
类似地,在一些实施方式中,由数据处理机1020检索的数据集可以仅包括与界面中显示区608、610、612和614的数目对应的低级别项目的数量。例如,在图7所示的示例中,仅表现了四个显示区608、610、612和614,因此与(例如标记为属于)每个中级别子组中的最多四个低级别项目对应的数据从数据服务器916被检索。
在308处,排序模块1026处理经分类的数据集以确定要在每个中级别子组内显示的低级别项目。在一些实施方式中,数据处理机1020仅检索每个低级别项目的预定义数据,其然后被显示为每个中级别子组中的低级别数据,但是在其他实施方式中,数据处理机1020可能检索完整的低级别项目(例如新闻文章),并且排序模块1026使用文本分析、元数据标签等来确定要显示哪些低级别数据。
显示的低级别数据(例如,在显示区中的)可以包括每个低级别项目的特定信息。例如,如图7中的示例实施方式所示,显示的低级别数据可以包括标题702、来源704、种类(classification)706、主题710和/或图像712,尽管其他实施方式也是可能的,如以下参照框312所述。在图7描绘的示例中,指定优先(如以下参考310所定义的)文章包括主题708而不是种类706,尽管其他实施方式也是可能的并且是可以预期的。此外,在一些实施方式中,只有指定的优先文章包括显示的图像(其可以由数据处理机1020为该文章检索),尽管其他实施方式也是可能的,例如,其中每个低级别数据项目/文章包括图像(如果可用)。
在310处,排序模块1026确定每个中级别子组中低级别数据呈现优先级。低级别数据呈现优先级定义以何种顺序呈现低级别项目,以及在一些实施方式中,这些项目中的哪些将是指定的优先项目。指定的优先项目的低级别数据可以被显示以代表中级别子组。例如,指定的优先项目可以是对于事件的新闻文章集群中最受欢迎的新闻文章,并且指定的优先项目的低级别数据可以被显示为中级别数据以反映整个中级别子组或者文章集群的内容。在一些情况下,指定的优先项目可以是已被排列并且其排名满足阈值的项目。例如,排列可以基于低级别项目上的元数据标签(例如,指示项目的流行度)以及低级别项目是否包括相关的图像(例如,在新闻文章的情况下,如果新闻文章包含图像)。
在一些实施方式中,在将数据集发送到数据呈现模块908之前,数据分析引擎918已经确定(或者可以响应于数据呈现模块908的服务请求而确定)指定的优先项目、剩余项目的显示顺序和/或低级别项目和/或中级别子组的排名,并相应地为项目加标签用于由排序模块1026识别。指定的优先项目是与满足例如在定义的准则集合内具有最高优先级或者排名、或者最密切地对应定义的准则集合的项目对应的任意项目。例如,可以基于整体流行度、类别内(例如,在中级别子组内,在高级别组内等等)的流行度、内容深度、其来源的声誉等等排列低级别项目。在其他示例中,低级别项目包括描述低级别项目的种类的标签(例如,如由数据分析引擎918确定的)。例如,在图7C所描绘的示例中,种类(710a、710c和710d)可以包括“深度”、“观点”和“国际”,但也可以包括排名第一的文章、本地来源、特定来源、(例如,在社交网络上的,受欢迎的等等)热门项目、被高度引用的、频繁分享的、观看最多的等等。
在一些实施方式中,排序模块1026通过评估每个项目确定呈现优先级,以确定具有相关图像的最高排名项目,其随后作为指定的优先项目被显示在给定显示区中。给定显示区对应于在其中中级别子组数据被显示用于子组的显示区,特定的指定优先项目属于该子组。例如,指定的优先新闻文章被显示在图7A-7C中的显示区610中。
在图7A-7C所示的示例中,用户已经从图7A中显示的子组列表中选择了显示区/中级别子组610,接着,数据呈现模块908更新所有其他显示区608、612和614以反映非指定的优先低级别数据。在一些情况下,非指定的优先项目被顺次(例如,根据以上讨论的排名)显示在剩余的显示区中(例如,608、612、614)。例如,如果指定优先权文章排在第三位并被显示在显示区610中,则分别在显示区608、612和614内呈现排名第一、第二和第四的其余文章。由于用低级别数据更新显示区时,所选择的中级别子组的显示数据保持不变,因此该变化对用户而言似乎不那么震撼。
可选择地或此外,在一些实施方式中,在显示区608、610、612和614内显示项目的顺序由它们的种类(例如,如上所述)指定。例如,在图7C中,显示区608显示具有种类710a“深度”的项目,显示区612显示具有种类710c“观点”的项目,并且显示区614显示具有种类710d“国际”的项目。布置和显示的特定种类可以被预先确定(例如,根据管理员设置、可用分类等)用于数据呈现模块908,或者可以由数据分析引擎918提供的可用的低级别项目和种类指示。例如,在一个实施方式中,指定的优先低级别项目显示在一个显示区中,并且其余显示区填充有具有上述分类中的一个或多个的低级别项目。
在312处,排序模块1026基于显示优先级、显示区中的可用数据字段、和/或元数据标签从数据集中确定显示区608、610、612和614的可显示信息,该数据集从数据服务器916检索,如上所述。在一些实施方式中,可显示信息可以包括概要、标题702a-702d、来源704a-704d、种类710a-710d、主题706a-706d、图像708a-708d和/或各自被确定用于项目的任何其他文本或图形信息(例如,基于项目/文章的内容和/或与项目/文章相关联的元数据标签)。
在一些实施方式中,对于一个或多个低级别项目可显示信息可以变化。例如,对于指定的优先项目可以显示与非指定的优先项目不同的信息/低级别数据。例如,在图7C所示的示例实施方式中,显示区610中指定优先文章的可显示信息包括主题706b、标题702b、来源704b和图像708b,而除了指定的优先项目之外的项目/文章的可显示信息,例如如608中所显示的,可以包括种类710a、标题712a和来源714a,但不包括图像。应该理解,尽管图7A-7C中描绘的实施方式涉及文章、标题、种类等,但是其他实施方式也是可能的,并且是可以通过此处描述的技术预期的。
在314处,排序模块1026将低级别数据的可显示信息与中级别子组相关联。具体地,在一些实施方式中,排序模块1026将指定的优先项目的可显示信息与该指定的优先项目所属的中级别组相关联。特别地,每个中级别子组的显示信息可以仅仅是特定低级别项目的低级别数据,例如指定的优先项目。例如,图7的显示区708b中显示的信息也被显示为图6的显示区608b中的中级别子组数据。
图4是用于响应于接收显示区选择而用低级别数据更新显示区608、610、612和614的示例方法400的流程图。方法400提供图1中所示的框110和112的进一步细节。在402处,接口模块1022生成包括用于显示至少一个数据集合的定义布局的动态图形界面,每个数据集合包括多个级别。在404处,数据处理机1020可以检索用于一个或多个高级别组的中级别数据。在406处,接口模块1022提供具有用于在客户端设备906上显示的定义布局的多个显示区608、610、612和614,每个显示区被配置为显示各个中级别子组的中级别数据。特别地,由接口模块1022在406处生成的显示区608、610、612和614能够显示用于所选择的高级别组的中级别子组数据,然后被更新以显示用于选择的中级别子组的低级别数据。
在408处,接口模块1022从多个显示区608、610、612和614接收表示对显示区的选择的用户输入。在410处,数据处理机1020响应于基于接收到的用户输入从接口模块1022接收信号,从数据服务器916检索用于中级别子组的低级别数据,该中级别子组与选择的显示区对应。在一些实施方式中,低级别数据连同或者作为用于所选择的高级别组的中级别数据被检索,并且因此,在410处,数据处理机1020从参照图10描述的数据存储1012中检索低级别数据。
在412处,接口模块1022使用由数据处理机1020检索的信息更新多个显示区608、610、612和614以包括与所选择的中级别子组内的低级别项目对应的低级别数据。特别地,接口模块1022可以利用每个低级别项目的可显示信息替换在显示区608、610、612和614中显示的中级别子组数据(例如,如参照图3讨论的)。在一些实施方式中,显示区608、610、612和614中的每一个包括可以显示低级别数据的选择和显示区域(例如,如图8A-8B所示)。显示区可以包括加载和显示标题702a、来源704a、种类710a、主题706a、图像708a等的区域,例如,如图7A-7C所示。例如,低级别项目可以包括各低级别数据,该低级别数据被标记或组织为例如标题、来源、种类、主题、图像等,其被加载到一个或者更多显示区中的指定区域,例如,如参照图6A-8B进一步详细描述的。
在一些情况下,显示区中(例如,在选择区域816中)的图像可以变灰,就好像中级别子组已经在高级别组顶部扩展一样。例如,示出的图像708a、708c和708d变灰以表明它们对应于未选择的中级别子组。在与未选择的子组对应的图像(例如,708a、708c和708d)变灰但仍然可见的实施方式中,用户可以通过选择与中级别子组对应的变灰的图像来轻松地选择不同的中级别子组,这会导致所选择的中级别子组被扩展。可选择地或此外,用户可以再次选择所选择的显示区以返回到包括中级别子组列表的前一个视图(例如,如图7A所示)。
因此,图7A描绘了示例图形用户界面700,其中显示区608、610、612和614每个都显示与所选择的高级别组中的中级别子组对应的图像和中级别数据。例如,在一些实施方式中,为每个中级别子组显示的中级别数据可以包括标题702a-702d、来源704a-704d、主题706a-706d和图像708a-708d。图7B描绘了图形用户界面700,其中显示区610通过指示器630被选择。
图7C描绘了图形用户界面700,其中显示区610已经被指示器730选择。在所描绘的实施方式中,显示区610中显示的中级别数据保持相同,但显示在显示区608、612和614中每一个的信息区域(例如,814)中的数据已被更新以反映所选择的中级别子组内的低级别项目。例如,显示区608已经被更新以包括所选择的中级别子组内低级项目的数据(例如,在基于事件的文章集群内的文章)。
在一些实施方式中,一旦低级别项目被显示,用户然后可以选择单个低级别项目(例如,通过选择信息区域814)以显示该项目的额外的低级别数据。例如,用户可以选择显示区中的信息区域以打开对应于该显示区的文章。在另一个示例中,用户可以选择多个低级别项目(例如,文章)以为每个选择项目(例如,打开文章)显示更多信息。
图5是用于响应于水平选择区域刷动来更新显示区608、610、612和614以在右手和左手布局之间切换的示例方法500的流程图。方法500提供图1中所示的框114和116的进一步的细节。在502处,接口模块1022生成用于显示至少一个数据集合的动态图形界面,每个数据集合包括多个级别。在504处,数据处理机1020从数据服务器916检索中级别和低级别数据。
在506处,接口模块1022提供用于在客户端设备906上显示的多个显示区608、610、612和614,每个显示区显示中级别数据或低级别数据,并且每个显示区被划分为选择栏822和信息栏820。如参照图1所讨论的并且如图8A所示,显示区608、610、612和614可以各自被划分为信息区域814和选择区域816。例如,如图8A所示,显示区608被划分为信息区域814a和选择区域816a。另外,在一些情况下,信息和选择区域可以对齐以形成信息栏820和选择栏822。
尽管在一些实施方式中,用户可能能够通过选择信息区域814来选择中级别子组和/或低级别项目,选择区域816a-816d被理想地提供以允许用户进行选择,而在选择期间指示器630(例如,触摸屏上的手指或触笔,光标等)不会被定位成遮挡信息区域814中的信息。例如,图7B示出了通过指示器730对显示区610的选择。类似地,如图8A所示,在一些实施方式中,与相关联的信息区域814中信息对应的选择区域816中的一个或多个图像(例如,缩略图图像)可以被显示在选择区域816a-816d中或涵盖选择区域816a-816d,尽管图像显示功能可以作为用户偏好被关闭或者可以不存在于实施方式中。例如,选择区域816a显示与信息区域814a中的信息对应的图像。例如,显示在选择区域816a中的图像可以是新闻文章中的第一图像,新闻文章被显示在信息区域814a中。
在508处,接口模块1022从与客户端设备906相关联的输入设备接收用户输入,并且在510处,接口模块1022确定用户输入是否包括对显示区或选择区域的点击或其他选择。在514处,基于510处的确定,接口模块1022选择多个显示区608、610、612和614中的显示区,并且更新选择的显示区以包括与选择的中级别子组对应的低级别数据。
在512处,接口模块1022确定在508处接收到的输入是否包括水平刷动。水平刷动可以包括指示器穿越图形界面的区域(例如,尤其是显示区)以更多为水平方式而非垂直方式的移动或滑动。特别地,接口模块1022确定是否存在从选择栏822开始的水平刷动,响应于此,在516处接口模块1022更新动态图形用户界面以沿着刷动方向移动选择栏822。例如,如图8A-8B所示和参照图8A-8B所描述的,接口模块1022将选择栏822从靠近显示器(例如,客户端设备906的触摸屏显示器)右侧的区域移动到靠近显示器左侧的区域。
在一些实施方式中,可以重新排列选择和信息栏以提供图形用户界面800的左手或右手布局。例如,可以拖动/刷动选择栏822以在右手和左手布局之间切换显示区,以当图形界面位于触摸屏设备上时提供更轻松的输入访问,以及防止与触摸屏交互的手指遮挡信息区域/栏。例如,图8A和8B示出了示例界面800从图8A中的右手布局切换到图8B中的左手布局。参照图8A,选择栏822a被示为在图形用户界面800的右侧,并且信息栏820被示为在图形用户界面800的左侧,由此使其成为右手方向。在图8A中,示出了指示器630从图形用户界面800的右侧向图形用户界面800的左侧刷动(例如,选择并拖动)选择栏822a。图8B示出了布局被切换到左手方向之后的示例图形用户界面800。例如,信息栏820b被显示在右侧,选择栏822b被显示在图形用户界面800的左侧,以便从左侧轻松地访问图形用户界面800。例如,使用触摸屏客户端设备906的用户可以在右手布局中(例如,如图8A中)使用右手或者在左手布局中(例如,如图8B中)使用左手,使用手指,例如,用户的拇指,来选择中级别子组和/或低级别项目,而不遮挡信息选择/区域。
图9是示出用于有效地组织、呈现分级数据和提供与分级数据的交互的示例系统900的高级别框图。所示系统900包括由用户912访问的客户端设备906、具有数据分析引擎918和数据库920的数据服务器916、以及具有第三方应用926的第三方服务器924。组件906、916和924经由网络902连接。
通过示例示出了图9中的设备902、906、916和924。尽管图9示出了单个客户端设备906、第三方服务器924和服务器916,但是本公开适用于具有任意数量的客户端设备906、第三方服务器924和服务器916的任意系统架构。此外,尽管只有一个网络902被耦合到客户端设备906、数据服务器916和第三方服务器924,实际上一个或多个网络902可以连接到这些实体。
虽然数据分析引擎918被示为在数据服务器916上可操作,数据库920被示为存储在数据服务器916上,第三方应用被示为在第三方服务器924上可操作,并且数据呈现模块908被示为在客户端设备906上可操作,应该理解,这些组件及其功能的全部或一部分可以存储在系统900的各种组件上和/或在系统900的各种组件上可操作。例如,在一些实施方式中,此处安排给数据呈现模块908的全部或部分功能和/或组件可以在数据服务器916上可操作。
客户端设备906可以是包括一个或多个内存和一个或多个处理器的任何计算设备,例如膝上型计算机、台式计算机、平板电脑、移动电话、智能电话设备、智能手表或者其他可穿戴设备、便携式游戏机、便携式音乐播放器、具有一个或多个处理器嵌入其中或与其耦合的电视机、或能够访问网络的任何其他电子设备。在一些实施方式中,系统900包括不同类型的客户端设备906的组合。例如,个人计算机和移动电话的组合。如下所述,应该理解的是,本技术可以在除了客户端-服务器架构之外的不同模型上操作。例如,客户端设备906可以包括数据呈现模块908和/或数据分析引擎918以及包括其他服务。
另外,数据呈现模块908的全部或一些组件可以例如作为浏览器上的网页应用或者可在浏览器内运行的专用代码,浏览器可以是存储在客户端设备906上并被配置与数据服务器916进行双向通信的网页浏览器。例如,浏览器是用于检索、呈现和遍历网络上的信息资源的软件应用。
服务器916和924可以包括具有数据处理、存储和通信能力的一个或多个计算设备。例如,服务器916和924可以包括一个或多个硬件服务器、服务器阵列、存储设备和/或系统等。在一些实施方式中,服务器916和924可以包括一个或多个虚拟服务器,其在主机服务器环境中操作并且经由抽象层(例如,虚拟机管理器)访问主机服务器的物理硬件,主机服务器包括例如处理器、内存、存储器、网络接口等。在一些实施方式中,服务器916和924可以包括用于处理内容请求的网络服务器(未示出),例如,HTTP服务器、REST(表征状态转移)服务或其他服务器类型,其具有用于满足内容请求并且从耦合到网络902的一个或多个计算设备接收内容的结构和/或功能。
在所描绘的实施方式中,数据服务器916可以包括数据分析引擎918和数据库920。数据服务器916可操作以经由网络902接收并响应来自客户端设备906的内容请求。数据分析引擎918可操作以聚合和供应(serve)分级数据,并且可以将分级数据存储在数据存储中并提供对数据存储中分级数据的访问,数据存储例如数据库920。参照图10以及此处其它地方更详细地描述数据分析引擎918。
数据库920是用于存储和提供对数据的访问的信息源。数据库920存储的数据可以使用各种准则来组织和查询,该准则包括它们存储的任意类型的数据,例如,项目标识符、项目标签关联、主题、标题、名称、来源、类别、作者、流行度、制造商、模型、在分级数据集中的位置和/或其他标签和描述符。数据库920可以包括数据表、数据库或其他有组织的数据聚集。由数据库存储的数据类型的示例可以包括但不限于,能够被分级组织的任何数据,包括但不限于新闻文章、照片、社交网络数据、产品信息、媒体等等。
数据库920可以被包括在数据服务器916、或不同于但耦合到数据服务器916或可由数据服务器916访问的另一个计算系统和/或存储系统中。数据库920可以包括用于存储数据的一个或多个非暂时性计算机可读介质。在一些实施方式中,数据库920可以存储与可在数据服务器916上操作的数据库管理系统(DBMS)相关联的数据。例如,DBMS可以包括结构化查询语言(SQL)DBMS、NoSQL DMBS、其各种组合等等。在一些情况下,DBMS可以将数据存储在包括行和列的多维表中,并且使用编程操作来操纵,即插入、查询、更新和/或删除,数据行。
在所描绘的实施方式中,第三方服务器116托管服务,例如第三方应用926,在一些实施方式中,第三方应用926可以是单独的和/或并入由数据服务器916提供的服务中。第三方服务器924可以是可操作的以经由网络902接收并响应来自客户端设备906和/或数据服务器916的内容请求。在一些实施方式中,第三方应用926提供可以被组织为多个级别或组的数据。例如,第三方应用程序926和相关联的第三方服务器924可以是提供低级别数据/项目的新闻服务,例如新闻文章照片、产品、媒体等,其可以被数据服务器916上的数据分析引擎918检索并处理。例如,第三方应用926可以响应于来自客户端设备(例如,客户端设备906)和/或数据服务器(例如数据服务器916)的服务请求,提供来自一个或多个来源的新闻文章或者信息,来源例如在线报纸、新闻网站、博客等。
网络902使能客户端设备906、数据服务器916和第三方服务器924之间的通信。因此,网络902可以包括链接,该链接使用包括例如Wi-Fi、Wi-Max、2G、通用移动通信系统(UMTS)、3G、以太网、802.11、综合业务数字网络(ISDN)、数字用户线路(DSL)、异步传输模式(ATM)、InfiniBand、PCI Express高级交换等的技术。类似地,在网络902上使用的网络协议可以包括传输控制协议/因特网协议(TCP/IP)、多协议标签交换(MPLS)、用户数据报协议(UDP)、超文本传输协议(HTTP)、简单邮件传输协议(SMTP)、文件传输协议(FTP)、轻量级目录访问协议(LDAP)、码分多址(CDMA)、宽带码分多址(WCDMA)、全球移动通信系统(GSM)、加速下行分组访问(HSDPA)等。可以使用包括超文本标记语言(HTML)、可扩展标记语言(XML)等的技术和/或格式来表示通过网络902交换的数据。另外,可以使用传统的加密技术加密全部或部分链接,例如,安全套接字层(SSL)、安全HTTP和/或虚拟专用网络(VPN)或因特网协议安全性(IPsec)。在一些实施方式中,除了或代替上述那些,实体可以使用定制和/或专用数据通信技术。取决于实施方式,网络902还可以包括到其他网络的链接。
在一些实施方式中,网络902是部分公共或全部公共网络,例如因特网。网络902也可以是专用网络或包括一个或多个不同或逻辑专用网络(例如,虚拟专用网络、广域网(“WAN”)和/或局域网(“LAN”))。另外,去往和来自网络902的通信链路可以是有线或无线的(即,基于地面或卫星的收发器)。在一些实施方式中,网络902是基于IP的广域网或城域网。
网络902可以具有任意数量的配置,包括星形配置、令牌环配置或其他配置。此外,网络902可以包括局域网(LAN)、广域网(WAN)(例如,因特网)和/或多个设备可以通过其通信的任何其他互连数据通路。在一些实施方式中,网络902可以是对等网络。网络902还可以耦合到或包括远程通信网的一部分,远程通信网用于以各种不同的通信协议发送数据。在一些实施方式中,网络902包括短波通信网络或蜂窝通信网络,用于包括经由短消息服务(SMS)、多媒体消息服务(MMS)、超文本传输协议(HTTP)、直接数据连接、无线应用协议(WAP)、电子消息等来发送和接收数据。
图10是示出示例计算系统1000的框图。取决于实施方式,示例计算系统1000可以表示客户端设备906、第三方服务器924和/或数据服务器916。如所描绘的,计算系统1000可以包括通信模块1002、处理器1004、内存1006、输入设备1008、输出设备1010和数据存储1012,其可以通过通信总线1016被可通信地耦合。通过示例的方式提供图10中描绘的计算系统1000,并且应该理解的是其可以采取其他形式并且包括额外的或更少的组件,而不脱离本公开的范围。例如,计算设备的各个组件可以被耦合用于通信,该通信使用包括例如通信总线、软件通信机制、计算机网络等的各种通信协议和/或技术。虽然未示出,但是计算系统1000可以包括各种操作系统、传感器、附加处理器和其他物理配置。
通信模块1002通过信号线1018耦合到网络902。通信模块1002也耦合到总线1016。通信模块1002包括用于有线连接的端口,包括但不限于USB、SD或CAT-5等。通信模块1002将处理器1004链接到网络902,网络902转而可以耦合到其他处理系统。通信模块1002使用标准网络协议,例如,TCP/IP、HTTP、HTTPS和SMTP,提供到网络902的其他常规连接。在一些实施方式中,通信模块1002包括收发器,用于使用Wi-Fi、蜂窝或其他用于无线通信的通信协议来发送和接收信号。
处理器1004可以包括算术逻辑单元、微处理器、通用控制器或一些其他的处理器阵列以执行计算并将电子显示信号提供给显示设备。在一些实施方式中,处理器1004是硬件处理器。处理器1004耦合到总线1016以与其他组件通信。处理器1004处理数据信号并且可以包括各种计算架构,包括复杂指令集计算机(CISC)架构、精简指令集计算机(RISC)架构或实现指令集组合的架构。虽然图10中只显示了一个处理器,但可以包含多个处理器。应该理解,其他处理器、操作系统、传感器、显示器和物理配置是可能的。
内存1006可以存储数据并向计算系统1000的其他组件提供访问。内存1006可以被包括在单个计算设备或多个计算设备中。在一些实施方式中,内存1006可以存储可被处理器1004运行的指令和/或数据。例如,在一些实施方式中,内存1006可以存储数据呈现模块908、数据分析引擎918和/或第三方应用926以及它们各自的组件中的一个或多个,这取决于配置。内存1006还能够存储其他指令和数据,包括例如操作系统、硬件驱动器、其他软件应用、数据库等。内存1006可以耦合到总线1016以用于与处理器1004和计算系统1000的其他组件的通信。
内存1006包括非暂时性计算机可用(例如,可读、可写等)介质,其可以是可包含、存储、传达、传播或传送指令、数据、计算机程序、软件、代码、例程等的任意非暂时性装置或设备,用于由处理器1004处理或与处理器1004结合处理。在一些实施方式中,内存1006可以包括易失性内存和非易失性内存中的一个或多个。例如,内存1006可以包括但不限于以下中的一个或多个:动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、分立存储器设备(例如,PROM、FPROM、ROM)、硬盘驱动器、光盘驱动器(CD、DVD、Blue-rayTM等)。应该理解的是,内存1006可以是单个设备或者可以包括多种类型的设备和配置。
输入设备1008可以包括用于将信息输入到计算系统1000中的任何设备。在一些实施方式中,输入设备1008可以包括一个或多个外围设备。例如,输入设备1008可以包括键盘(例如,QWERTY键盘)、指示器或指示设备(例如,鼠标或触摸板)、麦克风、图像/视频捕获设备(例如,摄像机)等。在一些实施方式中,输入设备1008可以包括能够接收来自用户的一个或多个手指或触笔的输入的触摸屏显示器。例如,输入设备1008和输出设备1010中的一个或多个的结构和/或功能可以被集成,并且计算系统1000的用户可以通过使用一个或多个手指接触显示器(例如输出设备1010)的表面来与计算系统1000交互。另外,在该示例中,用户可以通过使用手指接触键盘区域中的显示器来与显示在触摸屏输出设备1010上的仿真(例如,虚拟或软)键盘交互。
输出设备1010可以是能够从计算系统1000输出信息的任何设备。输出设备1010可以包括显示器、打印机、触觉设备、音频再现设备等中的一个或多个。在一些实施方式中,输出设备1010可以包括能够接收来自用户912的一个或多个手指的输入的触摸屏显示器。例如,输出设备1010可以包括能够检测和解译与显示器表面的多点接触的电容式触摸屏显示器。在一些实施方式中,计算系统1000可以包括用于表现并输出图像和数据的图形适配器(未示出),该图像和数据用于在输出设备1010上呈现。图形适配器(未示出)可以是包括单独的处理器和内存(未示出)的单独的处理设备,或可以与处理器1004和内存1006集成。
数据存储1012是用于存储数据和提供对数据的访问的信息源。由数据存储1012存储的数据可以使用各种准则来组织和查询,该准则包括它们存储的任意类型的数据,例如,项目标识符、项目标签关联、主题、标题、名称、来源、类别、作者、流行度、制造商、模型、在分级数据集中的位置、和/或其他标签和描述符。数据存储1012可以包括数据表、数据库或其他有组织的数据聚集。由数据存储1012存储的数据类型的示例包括但不限于数据集1014等。
数据存储1012可以被包括在计算系统1000中或者与计算系统1000不同但可耦合到计算系统1000或可由计算系统1000访问的另一个计算系统和/或存储系统中。数据存储1012可以包括一个或多个用于存储数据的非暂时计算机可读介质。在一些实施方式中,数据存储1012可以被并入内存1006或可以与其不同。在一些实施方式中,数据存储1012可以存储与可在计算系统1000上操作的数据库管理系统(DBMS)相关联的数据。例如,DBMS可以包括结构化查询语言(SQL)DBMS、NoSQL DMBS、其各种组合等等。在一些情况下,DBMS可以将数据存储在包括行和列的多维表中,并且使用编程操作来操纵,例如插入、查询、更新和/或删除,数据行。
数据集1014可以包括可被组织为多个级别或数据树的任意数据。数据集1014可以被组织(例如,在数据结构中,使用标签等)为低级别项目的组(例如,中级别子组)中,每个低级别项目具有低级别数据和/或元数据。低级别项目的组(例如,中级别子组)可以被组织为高级别组。在一些实施方式中,数据集1014可以被下载并存储到数据存储1012。在一些实施方式中,数据存储1012可以包括对存储在数据服务器916或第三方服务器924上的一些或全部数据集的引用。例如,与项目有关的一些或全部可显示信息可以包括显示可用数据的内联框架(iframe)或对象。例如,客户端设备906可以直接从第三方服务器924检索并显示低级别项目的图像。另外,应当理解的是,数据集1014可以额外地或可选地存储在数据库920上并且可以仅临时地存在于客户端设备906上的内存(例如,数据存储1012或内存1006中)中。
总线1016可以包括用于在计算设备的组件之间或计算设备之间传递数据的通信总线,网络总线系统包括网络902或其一部分、处理器网(mesh)、其组合等。在一些实施方式中,在计算设备1000上操作的数据处理机1020、接口模块1022、归类模块1024和排序模块1026以及各种其他组件(数据分析引擎918、第三方应用程序926、操作系统、设备驱动器等)可以经由通信机制协作和通信,该通信机制包括在总线1016中或与总线1016相关联地被实现。总线1016可以包括软件通信机制,其可以包括和/或促进例如进程间通信、本地功能或过程调用、远程过程调用、对象代理(例如,CORBA)、软件模块之间的直接套接字通信(例如,TCP/IP套接字)、UDP广播和接收、HTTP连接等。此外,任何或全部通信可以是安全的(例如,SSH、HTTPS等)。
数据呈现模块908和/或其组件可以被完全实现为硬件,或者可以包括可由客户端设备906上的处理器1004运行的计算机逻辑,以实现用于有效地组织、呈现具有多个分级级别的数据集和提供与具有多个分级级别的数据集的交互的例程或方法。在一些实施方式中,数据呈现模块908可以至少部分地基于从数据分析引擎918接收的信息来生成和呈现用户界面。例如,用户912可以使用数据呈现模块908来有效地查看/消费和导航分层数据。在一些实施方式中,数据呈现模块908包括可在其中操作的网页浏览器和/或代码、定制的客户端应用(例如,专用移动应用)、两者的组合等。
数据处理机1020处理数据请求并响应,和/或向数据呈现模块908的其他组件,例如,接口模块1022、归类模块1024和/或排序模块1026提供数据,如果可用。例如,数据处理机1020可处理来自数据呈现模块908的组件的数据请求,以从数据服务器916和/或第三方服务器924接收/检索可用数据。数据处理机1020可,例如经由总线1016,经由接口模块1022等,接收并响应来自数据呈现模块908的其他组件的数据请求。
接口模块1022从输入设备1008接收用户输入并处理用户输入以确定所请求的操作。另外,接口模块1022耦合到计算设备1000和数据呈现模块908的其他组件,并且向数据呈现模块908的组件(例如1020、1024、1026)发信号以执行它们的操作。例如,在一些实施方式中,接口模块1022可以被存储在内存1006中并且在处理器1004上运行以处理来自输入设备1008的用户输入,从数据服务器916请求数据集(例如,经由数据处理机1020和/或通信模块1002),向归类模块和/或排序模块1026发信号以处理数据集,并向输出设备1010发送图形界面以向用户显示所请求的信息。
归类模块1024可以确定每个低级别数据/项目属于哪个级别和组(例如,分级组或数据树)。例如,响应于从接口模块1022接收的信号,归类模块1024访问由数据处理机1020(例如,从数据存储1012)检索的数据集1014,并将数据分类为高级别组、中级别子组和低级别数据/项目(例如,根据项目的元数据中的标签)。
排序模块1026响应于来自接口模块1022或归类模块1024的信号,处理分类的数据集以确定每个中级别子组和高级别组的呈现优先级。例如,接口模块1022向排序模块1026发信号以处理数据集1014以确定低级别的显示顺序,并且在一些实施方式中确定中级别数据的显示顺序,如参照图3所述。排序模块1026可以访问数据存储1012中的数据,和/或直接从数据呈现模块908的一个或多个组件1020、1022或1024接收数据。
组件908、1020、1022、1024和/或1026可以是软件或例程。在一些实施方式中,908、1020、1022、1024和/或1026可以是可由处理器1004运行的指令集合。在一些实施方式中,908、1020、1022、1024和/或1026被存储在系统1000的内存1006中并且可由处理器1004访问和运行。组件908、1020、1022、1024和/或1026可通过总线1016和/或处理器1004可通信地彼此耦合,和/或耦合到计算系统1000的其他组件1002、1004、1006、1008、1010和/或1012。在一些实施方式中,组件1020、1022、1024和/或1026可以包括可由处理器1004运行的计算机逻辑,以提供它们的动作和/或功能。在前述任意实施方式中,这些组件1020、1022、1024和/或1026可适用于与处理器1004和计算系统1000的其他组件,例如数据存储1012和/或内存1006,协作和通信。
数据分析引擎918可以被完全实现为硬件或者可以包括可由计算系统1000上的处理器1004运行的计算机逻辑(例如,数据服务器916),以实现用于处理数据的例程或方法,例如,以将其组织为分级级别/组、标签项目、分析项目等,如上所述。在一些实施方式中,数据分析引擎918适用于经由总线1016与处理器1004、内存1006和计算设备1000的其他组件(例如,数据服务器916)协作和通信。
第三方应用926可以被完全实现为硬件或者可以包括可由计算系统1000上的处理器1004运行的计算机逻辑(例如,第三方服务器924),以实现用于供应数据/项目的例程或方法,该数据/项目可以以分级或数据树被组织,如上所述。在一些实施方式中,第三方应用926适用于经由总线1016与处理器1004、内存1006和计算设备1000的其他组件(例如,第三方服务器926)协作和通信。
在以上描述中,出于解释的目的,阐述了许多具体细节。然而,显而易见的是,可以在没有这些具体细节的任何给定子集的情况下实践所公开的技术。在其他情况下,结构和设备以框图形式被示出。例如,在以上的一些实施方式中参考用户界面和特定硬件描述了所公开的技术。
说明书中对“一个实施方式”或“一种实施方式”的引用意味着结合该实施方式描述的特定特征、结构或特性被包括在所公开技术的至少一个实施方式中。说明书中各个地方出现的短语“在一个实施方式中”并不一定都指的是相同的实施方式。
以上详细描述的一些部分是根据对计算机内存内的数据位的操作的进程和符号表示来呈现的。通常可以将进程视为导致结果的步骤的自洽(self-consistent)序列。这些步骤可能涉及物理量的物理操纵。这些量采用能够被存储、传递、组合、比较和以其他方式操纵的电或磁信号的形式。这些信号可以被认为处于比特、值、元素、符号、字符、术语、数字等的形式。
这些和类似的术语可以与适当的物理量相关联并且可以被认为是应用于这些量的标签。除非另外特别指出,否则从前面的讨论中显而易见的是,应该理解,贯穿整个说明书,利用例如“处理”或“计算”或“运算”或“确定”或“显示”等术语的讨论可以指计算机系统或类似的电子计算设备的动作和处理,其将在计算机系统的寄存器和内存内被表示为物理(电子)量的数据操纵并转换成被类似地表示为计算机系统内存或寄存器或其他此类信息存储、发送或显示设备内的物理量的其它数据。
所公开的技术还可以涉及用于执行此处操作的装置。该装置可以为了所需目的而专门构造,或者它可以包括通过计算机中存储的计算机程序选择性地激活或重新配置的通用计算机。这样的计算机程序可以存储在计算机可读存储介质中,例如但不限于包括软盘、光盘、CD-ROM和磁盘的任意类型的盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡、具有非易失性存储器或适用于存储电子指令的任意类型的介质的包括USB密钥的闪存,每个都被耦合到计算机系统总线。
所公开的技术可以采取完全硬件实现、完全软件实现或包含硬件和软件元素两者的实现的形式。在一些实施方式中,该技术以软件来实现,该软件包括但不限于固件、常驻软件、微码等等。
此外,所公开的技术可以采取计算机程序产品的形式,其可从非暂时性计算机可用或计算机可读介质获得,该介质提供由计算机或任何指令运行系统使用或与其结合使用的程序代码。为了描述的目的,计算机可用或计算机可读介质可以是能够包含、存储、传达、传播或传送程序以供指令运行系统、装置或设备使用或与其结合使用的任意装置。
适合于存储和/或运行程序代码的计算系统或数据处理系统将包括通过系统总线直接或间接耦合到存储器元件的至少一个处理器(例如,硬件处理器)。存储器元件可以包括在程序代码的实际运行期间使用的本地内存、大容量存储器和高速缓存存储器,该高速缓存存储器提供至少一些程序代码的临时存储以便减少在运行期间必须从大容量存储器检索代码的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、指点设备(pointing device)等)可以直接或通过中间I/O控制器耦合到系统。
网络适配器也可以耦合到系统以使得数据处理系统能够通过中间的专用或公共网络耦合到其他数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡只是当前可用类型的网络适配器中的几个。
最后,所公开的技术没有参考任何特定的编程语言来描述。应该理解的是,可以使用各种编程语言来实现此处描述的技术的教导。
为了说明和描述的目的,已经呈现了本技法和技术的实施方式的以上描述。意图不是穷举或将本技法和技术限制为所公开的确切形式。鉴于上述教导,许多修改和变化是可能的。意图是使本技法和技术的范围不受该详细描述的限制。本技法和技术可以在不脱离其精神或基本特征的情况下以其他特定形式来实现。类似地,模块、例程、特征、属性、方法和其他方面的特定命名和划分不是强制的或重要的,并且实现本技法和技术或其特征的机制可以具有不同的名称、划分和/或格式。此外,本技术的模块、例程、特征、属性、方法和其它方面可以被实现为软件、硬件、固件或三者的任意组合。而且,无论何处其示例为模块的组件被实现为软件,该组件可以被实现为独立程序、较大程序的一部分、多个单独的程序、静态或动态链接库、内核可加载模块、设备驱动器和/或以现在或未来在计算机编程中已知的每个和任何其他方式被实现。另外,本技法和技术决不限于以任何特定的编程语言或者用于任何特定的操作系统或环境的实施。因此,本技法和技术的公开意图是说明性的而非限制性的。
Claims (24)
1.一种方法,其特征在于,包括:
在计算设备处生成包括静态布局的图形用户界面,所述静态布局包括显示区和处于第一级别的交互区,所述显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且所述第一级别交互区具有多个子区;
接收用户输入;
确定所述接收的用户输入是否是所述第一级别交互区的所述多个子区中的一个的选择;
响应于确定所述接收的用户输入是所述多个子区中的一个的选择,更新所述显示区以包括与所述多个子区中的一个的选择对应的所述第二级别子组;
确定所述接收的用户输入是否是所述显示区的选择;并且
响应于确定所述用户输入是所述显示区的选择,更新所述显示区以包括与所述第二级别子组对应的所述第三级别项目。
2.根据权利要求1所述的方法,其特征在于,进一步包括从数据服务器检索数据集合,所述数据集合包括第一级别组、第二级别子组和第三级别项目,所述第三级别项目是文章,所述第二级别子组是与公共事件相关的文章集群,并且所述第一级别组是与公共类别相关的一组文章集群。
3.根据权利要求1所述的方法,其特征在于,确定所述接收的用户输入是否是所述多个子区中的一个的选择包括,确定所述用户输入是否包括穿越所述第一级别交互区的擦动输入。
4.根据权利要求21所述的方法,其特征在于,所述显示区包括信息区域和选择区域,所述信息区域显示文本信息,并且所述选择区域显示与所述文本信息对应的图像。
5.根据权利要求4所述的方法,其特征在于,所述选择区域位于所述图形用户界面的竖直边缘附近。
6.根据权利要求4所述的方法,其特征在于,所述图形用户界面包括多个显示区,并且其中更新所述显示区以包括所述第三级别项目包括,利用不同的数据更新所述多个显示区中的每一个。
7.根据权利要求1所述的方法,其特征在于,还包括:
基于与所述第三级别项目相关联的元数据标签,确定所述第二级别子组内的所述第三级别项目的排名;
确定是否存在与所述第三级别项目相关联的图像;以及
如果所述第三级别项目的排名满足阈值,则选择所述第三级别项目用于在所述图形用户界面中显示。
8.根据权利要求1所述的方法,其特征在于,所述显示区包括选择区域和信息区域,所述选择区域位于所述图形用户界面的第一竖直边缘附近,并且其中所述方法还包括确定所述用户输入是否包括在所述选择区域开始并且在所述信息区域结束的水平刷动,并且响应于所述水平刷动更新所述显示区以将所述选择区域移动到位于所述图形用户界面的第二竖直边缘附近。
9.一种系统,其特征在于,所述系统包括:
处理器;和
内存,所述内存存储指令,当所述指令被所述处理器运行时,使得所述系统:
生成包括静态布局的图形用户界面,所述静态布局包括显示区和第一级别交互区,所述显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且所述第一级别交互区具有多个子区;
接收用户输入;
确定所述接收的用户输入是否是所述第一级别交互区的所述多个子区中的一个的选择;
响应于确定所述接收的用户输入是所述多个子区中的一个的选择,更新所述显示区以包括与所述多个子区中的一个的选择对应的所述第二级别子组;
确定所述接收的用户输入是否是所述显示区的选择;并且
响应于确定所述用户输入是所述显示区的选择,更新所述显示区以包括与所述第二级别子组对应的所述第三级别项目。
10.根据权利要求9所述的系统,其特征在于,所述存储器还存储当被所述处理器运行时使得所述系统从数据服务器检索数据集合的指令,所述数据集合包括第一级别组、第二级别子组和第三级别项目,所述第三级别项目是文章,所述第二级别子组是与公共事件相关的文章集群,并且所述第一级别组是与公共类别相关的一组文章集群。
11.根据权利要求9所述的系统,其特征在于,所述存储器还存储当被所述处理器运行时使得所述系统确定所述用户输入是否包括穿越所述第一级别交互区的擦动输入的指令。
12.根据权利要求9所述的系统,其特征在于,所述显示区包括信息区域和选择区域,所述信息区域显示文本信息,并且所述选择区域显示与所述文本信息对应的图像。
13.根据权利要求12所述的系统,其特征在于,所述选择区域位于所述图形用户界面的竖直边缘附近。
14.根据权利要求9所述的系统,其特征在于,所述图形用户界面包括多个显示区,并且其中所述内存还存储当被所述处理器运行时使得系统利用不同的数据更新所述多个显示区中的每一个的指令。
15.根据权利要求9所述的系统,其特征在于,所述内存还存储指令,当所述指令被所述处理器运行时,使得所述系统:
基于与所述第三级别项目相关联的元数据标签,确定所述第二级别子组内的所述第三级别项目的排名;
确定是否存在与所述第三级别项目相关联的图像;以及
如果所述第三级别项目的排名满足阈值,则选择所述第三级别项目用于在所述图形用户界面中显示。
16.根据权利要求9所述的系统,其特征在于,所述显示区包括选择区域和信息区域,所述选择区域位于所述图形用户界面的第一竖直边缘附近,并且其中所述存储器还存储当被所述处理器运行时使得所述系统确定所述用户输入是否包括在所述选择区域开始并且在所述信息区域结束的水平刷动并且响应于所述水平刷动更新所述显示区以将所述选择区域移动到位于所述图形用户界面的第二竖直边缘附近的指令。
17.一种计算机程序产品,所述计算机程序产品包含非暂时性计算机可用介质,所述非暂时性计算机可用介质包括计算机可读程序,其特征在于,所述计算机可读程序当在计算机上运行时使得所述计算机:
生成包括静态布局的图形用户界面,所述静态布局包括显示区和第一级别交互区,所述显示区被配置为显示代表第二级别子组和第三级别项目中的一个的数据,并且所述第一级别交互区具有多个子区;
接收用户输入;
确定所述接收的用户输入是否是所述第一级别交互区的所述多个子区中的一个的选择;
响应于确定所述接收的用户输入是所述多个子区中的一个的选择,更新所述显示区以包括与所述多个子区中的一个的选择对应的所述第二级别子组;并且
确定所述接收的用户输入是否是所述显示区的选择;并且
响应于确定所述用户输入是所述显示区的选择,更新所述显示区以包括与所述第二级别子组对应的所述第三级别项目。
18.根据权利要求17所述的计算机程序产品,其特征在于,所述计算机可读程序当在所述计算机上运行时还使得所述计算机从数据服务器检索数据集合,所述数据集合包括第一级别组、第二级别子组和第三级别项目,所述第三级别项目是文章,所述第二级别子组是与公共事件相关的文章集群,并且所述第一级别组是与公共类别相关的一组文章集群。
19.根据权利要求1717所述的非暂时性计算机可读介质,其特征在于,所述计算机可读程序当在所述计算机上运行时还使得所述计算机确定所述用户输入是否包括穿越所述第一级别交互区的擦动输入。
20.根据权利要求1717所述的非暂时性计算机可读介质,其特征在于,所述显示区包括信息区域和选择区域,所述信息区域显示文本信息,并且所述选择区域显示与所述文本信息对应的图像。
21.根据权利要求20所述的非暂时性计算机可读介质,其特征在于,所述选择区域位于所述图形用户界面的竖直边缘附近。
22.根据权利要求2017所述的非暂时性计算机可读介质,其特征在于,所述图形用户界面包括多个显示区,并且其中所述计算机可读程序当在所述计算机上运行时还使得所述计算机利用不同的数据更新所述多个显示区中的每一个。
23.根据权利要求17所述的非暂时性计算机可读介质,其特征在于,所述计算机可读程序当在所述计算机上运行时还使得所述计算机:
基于与所述第三级别项目相关联的元数据标签,确定所述第二级别子组内的所述第三级别项目的排名;
确定是否存在与所述第三级别项目相关联的图像;以及
如果所述第三级别项目的排名满足阈值,则选择所述第三级别项目用于在所述图形用户界面中显示。
24.根据权利要求17所述的非暂时性计算机可读介质,其特征在于,所述显示区包括选择区域和信息区域,所述选择区域位于所述图形用户界面的第一竖直边缘附近,并且其中所述计算机可读程序当在所述计算机上运行时还使得所述计算机确定所述用户输入是否包括在所述选择区域开始并且在所述信息区域结束的水平刷动,并且响应于所述水平刷动更新所述显示区以将所述选择区域移动到位于所述图形用户界面的第二竖直边缘附近的指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/935,258 US20170131872A1 (en) | 2015-11-06 | 2015-11-06 | Mobile User Interface |
US14/935,258 | 2015-11-06 | ||
PCT/US2016/058547 WO2017078958A1 (en) | 2015-11-06 | 2016-10-24 | Mobile user interface |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108475270A true CN108475270A (zh) | 2018-08-31 |
Family
ID=57233920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680069631.6A Pending CN108475270A (zh) | 2015-11-06 | 2016-10-24 | 移动用户界面 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20170131872A1 (zh) |
EP (1) | EP3353685A1 (zh) |
JP (1) | JP6596594B2 (zh) |
KR (1) | KR102110700B1 (zh) |
CN (1) | CN108475270A (zh) |
DE (1) | DE112016004579T5 (zh) |
GB (1) | GB2558487A (zh) |
WO (1) | WO2017078958A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114035722A (zh) * | 2020-07-21 | 2022-02-11 | 北京小米移动软件有限公司 | 应用程序的交互方法、装置及介质 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593342B2 (en) | 2016-02-01 | 2023-02-28 | Smartshift Technologies, Inc. | Systems and methods for database orientation transformation |
US10585655B2 (en) | 2016-05-25 | 2020-03-10 | Smartshift Technologies, Inc. | Systems and methods for automated retrofitting of customized code objects |
US10089103B2 (en) | 2016-08-03 | 2018-10-02 | Smartshift Technologies, Inc. | Systems and methods for transformation of reporting schema |
JP6784168B2 (ja) * | 2016-12-19 | 2020-11-11 | 株式会社リコー | 情報処理装置、プログラム、閲覧システム |
US10430035B2 (en) * | 2017-08-24 | 2019-10-01 | Sap Se | Embedded analytics for applications and interfaces across multiple platforms |
KR102420280B1 (ko) * | 2017-10-30 | 2022-07-13 | 엘지전자 주식회사 | 이동 단말기 |
US10698674B2 (en) | 2018-02-06 | 2020-06-30 | Smartshift Technologies, Inc. | Systems and methods for entry point-based code analysis and transformation |
US10740075B2 (en) | 2018-02-06 | 2020-08-11 | Smartshift Technologies, Inc. | Systems and methods for code clustering analysis and transformation |
US10528343B2 (en) * | 2018-02-06 | 2020-01-07 | Smartshift Technologies, Inc. | Systems and methods for code analysis heat map interfaces |
CN108469898B (zh) | 2018-03-15 | 2020-05-12 | 维沃移动通信有限公司 | 一种图像处理方法及柔性屏终端 |
CN110188253B (zh) * | 2019-05-30 | 2021-09-14 | 北京字节跳动网络技术有限公司 | 一种信息展示方法、装置及存储介质 |
US11343209B2 (en) * | 2019-09-27 | 2022-05-24 | Snap Inc. | Presenting reactions from friends |
CN117687552B (zh) * | 2024-02-04 | 2024-04-23 | 深圳市创义信光电科技有限公司 | 显示屏分区显示方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070186186A1 (en) * | 2006-02-03 | 2007-08-09 | Yahoo! Inc. | Content structures and content navigation interfaces |
US20110202848A1 (en) * | 2010-01-19 | 2011-08-18 | Collarity, Inc. | Anchoring for content synchronization |
US20120167011A1 (en) * | 2010-12-23 | 2012-06-28 | Microsoft Corporation | Application Reporting in an Application-Selectable User Interface |
JP2013070293A (ja) * | 2011-09-25 | 2013-04-18 | Sockets Inc | コンテンツ閲覧装置および閲覧サービスを提供するサーバ装置 |
US20130151611A1 (en) * | 2011-12-12 | 2013-06-13 | Mary Graham | Displaying news ticker content in a social networking system |
US20130235087A1 (en) * | 2012-03-12 | 2013-09-12 | Canon Kabushiki Kaisha | Image display apparatus and image display method |
US20140157188A1 (en) * | 2011-11-26 | 2014-06-05 | Kentaro Miura | Systems and methods for organizing and displaying hierarchical data structures in computing devices |
JP2014215820A (ja) * | 2013-04-25 | 2014-11-17 | 大日本印刷株式会社 | 情報表示装置、情報表示方法及び情報表示用プログラム |
US20140358913A1 (en) * | 2013-05-28 | 2014-12-04 | Microsoft Corporation | Hierarchical entity information for search |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1965301A1 (en) * | 2007-02-27 | 2008-09-03 | Abb Research Ltd. | Method and system for generating a control system user interface |
US20090063517A1 (en) * | 2007-08-30 | 2009-03-05 | Microsoft Corporation | User interfaces for scoped hierarchical data sets |
US8375073B1 (en) * | 2007-11-12 | 2013-02-12 | Google Inc. | Identification and ranking of news stories of interest |
US8161413B2 (en) * | 2009-09-01 | 2012-04-17 | Oracle International Corporation | Method and system for providing user interface representing organization hierarchy |
US8963962B2 (en) * | 2012-03-06 | 2015-02-24 | Apple Inc. | Display of multiple images |
US9164965B2 (en) * | 2012-09-28 | 2015-10-20 | Oracle International Corporation | Interactive topological views of combined hardware and software systems |
KR20170002051A (ko) * | 2015-06-29 | 2017-01-06 | 삼성전자주식회사 | 한 손 조작 사용자 인터페이스 구현 방법 및 이를 수행하는 전자 장치 |
-
2015
- 2015-11-06 US US14/935,258 patent/US20170131872A1/en not_active Abandoned
-
2016
- 2016-10-24 JP JP2018542672A patent/JP6596594B2/ja active Active
- 2016-10-24 DE DE112016004579.4T patent/DE112016004579T5/de not_active Ceased
- 2016-10-24 CN CN201680069631.6A patent/CN108475270A/zh active Pending
- 2016-10-24 EP EP16791227.8A patent/EP3353685A1/en not_active Ceased
- 2016-10-24 KR KR1020187014539A patent/KR102110700B1/ko active IP Right Grant
- 2016-10-24 GB GB1806764.5A patent/GB2558487A/en not_active Withdrawn
- 2016-10-24 WO PCT/US2016/058547 patent/WO2017078958A1/en active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070186186A1 (en) * | 2006-02-03 | 2007-08-09 | Yahoo! Inc. | Content structures and content navigation interfaces |
US20110202848A1 (en) * | 2010-01-19 | 2011-08-18 | Collarity, Inc. | Anchoring for content synchronization |
US20120167011A1 (en) * | 2010-12-23 | 2012-06-28 | Microsoft Corporation | Application Reporting in an Application-Selectable User Interface |
JP2013070293A (ja) * | 2011-09-25 | 2013-04-18 | Sockets Inc | コンテンツ閲覧装置および閲覧サービスを提供するサーバ装置 |
US20140157188A1 (en) * | 2011-11-26 | 2014-06-05 | Kentaro Miura | Systems and methods for organizing and displaying hierarchical data structures in computing devices |
US20130151611A1 (en) * | 2011-12-12 | 2013-06-13 | Mary Graham | Displaying news ticker content in a social networking system |
US20130235087A1 (en) * | 2012-03-12 | 2013-09-12 | Canon Kabushiki Kaisha | Image display apparatus and image display method |
JP2014215820A (ja) * | 2013-04-25 | 2014-11-17 | 大日本印刷株式会社 | 情報表示装置、情報表示方法及び情報表示用プログラム |
US20140358913A1 (en) * | 2013-05-28 | 2014-12-04 | Microsoft Corporation | Hierarchical entity information for search |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114035722A (zh) * | 2020-07-21 | 2022-02-11 | 北京小米移动软件有限公司 | 应用程序的交互方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
GB201806764D0 (en) | 2018-06-06 |
EP3353685A1 (en) | 2018-08-01 |
JP2018538643A (ja) | 2018-12-27 |
KR20180073644A (ko) | 2018-07-02 |
US20170131872A1 (en) | 2017-05-11 |
GB2558487A (en) | 2018-07-11 |
WO2017078958A1 (en) | 2017-05-11 |
JP6596594B2 (ja) | 2019-10-23 |
KR102110700B1 (ko) | 2020-05-13 |
DE112016004579T5 (de) | 2018-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108475270A (zh) | 移动用户界面 | |
US10740121B2 (en) | User interface for navigating multiple applications | |
US8667419B2 (en) | Method and apparatus for displaying a menu for accessing hierarchical content data including caching multiple menu states | |
CN102520841B (zh) | 收集用户接口 | |
CN103098002B (zh) | 用于移动设备的信息的基于鱼眼表示 | |
US10289727B2 (en) | Incorporation of semantic attributes within social media | |
US20150215245A1 (en) | User interface for graphical representation of and interaction with electronic messages | |
US20130167080A1 (en) | Smart and flexible layout context manager | |
US20060174211A1 (en) | Methods, apparatus and data structures for providing a user interface which facilitates decision making | |
US20060031187A1 (en) | Systems and methods for enterprise-wide visualization of multi-dimensional data | |
KR20060052717A (ko) | 가상 데스크 탑, 프로그램 예의 배열을 리콜링하는 방법, 애플리케이션 예를 관리하는 방법 및 애플리케이션을 관리하는 방법 | |
US20160342678A1 (en) | Manipulation of arbitrarily related data | |
CN106575308A (zh) | 数据元素向可视化边缘的基于语义距离的指派 | |
CN105393200B (zh) | 用户接口反馈元素 | |
CN104221356A (zh) | 用于创建相册的应用程序 | |
CN110045953A (zh) | 生成业务规则表达式的方法及计算装置 | |
Wang et al. | SurfaceSlide: a multitouch digital pathology platform | |
CN107066426A (zh) | 在将数据变换成可消费内容时创建变型 | |
JP2021508102A (ja) | ウェブサイト構築システムにおけるテキストコンテンツの生成及び編集のためのシステム及び方法 | |
CN109074372A (zh) | 使用拖放来应用元数据 | |
US9940014B2 (en) | Context visual organizer for multi-screen display | |
KR20100101594A (ko) | 견본 요소의 메타데이터에 기초하여 디지털 컨텐츠를 검색하는 방법, 시스템 및 컴퓨터 프로그램 | |
CN109583591A (zh) | 用于简化的知识工程的方法与系统 | |
WO2014197819A2 (en) | Financial information management system and user interface | |
US20120109609A1 (en) | Online media and presentation interaction method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180831 |
|
RJ01 | Rejection of invention patent application after publication |