【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种在屏幕中显示对象的方法和装置。
背景技术:
现有技术在终端的应用程序(application,简称app)中展现评论的方式分为两种:
第一种,抽取部分评论依次排列展现;
第二种,将评论列表放入二级页面。
然而第一种方式的缺点为,由于手机等移动终端屏幕尺寸的限制,屏幕app界面首屏位置越来越寸土寸金,评论的依次排列及评论内容的冗长势必要占用太多屏幕空间,尤其是首屏空间,对用户想吐槽,想找认同感的体验造成了一定的影响;
第二种方式的缺点为,需要进入二级页面才可查看评论,要点击评论进入评论详情页,步骤很长。
技术实现要素:
本发明提供了一种在屏幕中显示对象的方法,以便于节约屏幕空间资源,避免页面跳转。
本发明提供了一种在屏幕中显示对象的方法和装置,具体技术方案如下:
一种在屏幕中显示对象的方法,所述方法包括:
将对象数据展现在应用主视图上包含的子视图中;
捕捉到所述子视图上的操作手势后,在所述子视图上展现所述操作手势对应的对象数据变化。
根据本发明一优选实施例,所述将对象数据展现在应用主视图上包含的子视图中包括:
获取所述对象数据;
依据预设的对象模型,将所述对象数据填充至所述子视图,其中对象模型包含所述对象数据在子视图中的图像属性和文本属性。
根据本发明一优选实施例,所述子视图上的操作手势包括:在子视图上的滑动手势。
根据本发明一优选实施例,在所述子视图上展现所述操作手势对应的对象数据变化包括:
在所述操作手势的滑动过程中,依据所述操作手势相对于所述子视图的滑动偏移状况,确定所述对象数据的显示尺寸和位置;
依据确定的所述显示尺寸和位置,展现所述对象数据。
根据本发明一优选实施例,所述操作手势相对于所述子视图的滑动偏移状况包括:根据所述滑动手势的滑动距离以及对象数据宽度确定的滑动偏移率。
根据本发明一优选实施例,所述依据所述操作手势相对于所述子视图的滑动偏移状况,确定所述对象数据的显示尺寸和位置包括:
依据预设的初始显示尺寸和目标显示尺寸,确定滑动偏移率对应的对象数据的显示尺寸;以及,
依据预设的初始显示位置和对象数据宽度,确定滑动偏移率对应的对象数据的显示位置。
根据本发明一优选实施例,在所述操作手势的滑动过程中取n个采样点,分别针对n个采样点确定并更新所述对象数据的显示尺寸和位置,所述n为正整数。
根据本发明一优选实施例,所述对象数据包括:操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数;
分别针对所述m1条对象数据和所述下m2条对象数据确定显示尺寸和位置。
根据本发明一优选实施例,针对所述m1条对象数据采用渐隐方式展现,针 对所述下m2条对象数据采用渐现方式展现。
根据本发明一优选实施例,所述对象数据包括针对所述应用主视图上主题数据的评论内容和评论者标识图像。
一种在屏幕中显示对象的装置,所述装置包括:
捕捉单元,用于捕捉应用主视图上包含的子视图上的操作手势;
展现单元,用于将对象数据展现在所述子视图中,以及用于在捕捉单元捕捉到所述子视图上的操作手势后,在所述子视图上展现所述操作手势对应的对象数据变化。
根据本发明一优选实施例,所述装置还包括获取单元,用于获取所述对象数据;
所示展示单元依据预设的对象模型,将获取的对象数据填充至所述子视图,其中对象模型包含所述对象数据在子视图中的图像属性和文本属性。
根据本发明一优选实施例,所述子视图上的操作手势包括:在子视图上的滑动手势。
根据本发明一优选实施例,所述装置还包括处理单元,用于在所述操作手势的滑动过程中,依据所述操作手势相对于所述子视图的滑动偏移状况,确定所述对象数据的显示尺寸和位置;
所述展现单元依据确定的所述显示尺寸和位置,展现所述对象数据。
根据本发明一优选实施例,所述操作手势相对于所述子视图的滑动偏移状况包括:根据所述滑动手势的滑动距离以及对象数据宽度确定的滑动偏移率。
根据本发明一优选实施例,所述处理单元通过执行以下操作以确定所述对象数据的显示尺寸和位置:
依据预设的初始显示尺寸和目标显示尺寸,确定滑动偏移率对应的对象数据的显示尺寸;以及,
依据预设的初始显示位置和目标显示位置,确定滑动偏移率对应的对象数据的显示位置。
根据本发明一优选实施例,所述处理单元在所述操作手势的滑动过程中取n 个采样点,分别针对n个采样点确定并更新所述对象数据的显示尺寸和位置,所述n为正整数。
根据本发明一优选实施例,所述对象数据包括:操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数;
所述处理单元分别针对所述m1条对象数据和所述下m2条对象数据确定显示尺寸和位置。
根据本发明一优选实施例,所述展现单元针对所述m1条对象数据采用渐隐方式展现,针对所述下m2条对象数据采用渐现方式展现。
根据本发明一优选实施例,所述对象数据包括针对所述应用主视图上主题数据的评论内容和评论者标识图像。
由以上技术方案可以看出,本发明提供的方法和装置可以在屏幕主视图的子视图内根据操作手势而展示与其对应的数据变化,由于可以根据操作手势而在同一子视图中显示对象数据及对象数据变化,避免为了查看变化数据而需要页面跳转,节约了屏幕空间,增强了用户的体验。
【附图说明】
图1为本发明实施例一提供的一种在屏幕中显示对象的方法流程图;
图2为本发明实施例二提供的一种在屏幕中显示对象的装置结构示意图;
图3a为本发明在手势操作之前展现的m1、m2条对象数据的效果图;
图3b为本发明在手势操作之后展现的m1、m2条对象数据的效果图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
实施例一
图1为本发明实施例一提供的一种在屏幕中显示对象的方法流程图,如图1所示,该方法包括以下步骤:
101、获取对象数据,将对象数据展现在应用主视图上包含的子视图中。
该步骤中,可以通过移动端技术,根据后台接口,通过网络请求服务器上的对象数据,该对象数据可以是该应用界面上特定类型的对象数据,例如可以是针对应用主视图上主题数据的评论数据,包括评论内容和评论者标识图像。
其中应用主视图以及子视图均在同一应用界面中并显示在终端屏幕上。
终端可以包括手机、掌上电脑、个人通讯助理机等便携式设备。
例如以新闻应用中某一新闻的数据展现于主视图,对于该新闻的评论数据展现于该主视图包含的子视图,其中评论数据可以包括评论内容和评论者头像;该对象数据也可以包括任何与主视图上的主题数据相关的,具有较多数据内容但需要在较小空间显示的数据,例如相对于汉字的英文翻译、相对于商品的推荐以及相对于图书的目录等。
可以将获取的对象数据依据预设的对象模型进行建模以方便存储。其中存储所用的对象模型包含对象数据的图像属性和文本属性。
以评论数据作为对象数据为例,可以从服务器维护的数据中根据数据字段提取评论内容、评论者头像以及评论者id等。
优选地,由于后台服务器上的操作系统与应用所在的操作系统可能由不同的语言编写,具有不同的语言格式,可以从服务器所维护的数据中,获得json格式的对象数据,然后将获取的json数据序列化到预设的对象模型。
序列化主要是用于存储对象状态为另一种通用格式,比如存储为二进制、xml、json等等,把对象转换成这种格式就叫序列化,而反序列化通常是从这种格式转换回来。
使用序列化主要是因为跨平台和对象存储的需求,因为网络上只允许字符串或者二进制格式,而文件需要使用二进制流格式,如果想把一个内存中的对象存储下来就必须使用序列化转换为xml(字符串)、json(字符串)或二进制(流)。
在ios实现上,可以通过给nsobject对象定义两个属性来建模,一个 属性是uiimage表示评论者头像数据,一个属性是nsstring表示评论内容,并且,可以通过nsjsonserialization来将网络获取的json数据序列化到定义的模型。
102、捕捉应用主视图上包含的子视图上的操作手势。
该步骤中,可以捕捉屏幕上的操作手势,其中屏幕上包含主视图以及多个子视图,并且至少一个子视图可以展现对象数据。
可以判断操作手势在屏幕上的坐标,当该操作手势的坐标位于展现对象数据的子视图边界内,则确定捕捉到的是对于子视图的对象数据的操作手势。
该操作手势可以包括点击子视图上的控件的手势,优选地,子视图上的操作手势可以包括在子视图上的滑动手势。
在ios中,可以通过uipangesturerecognizer来获得手指触摸到屏幕的坐标,移动的位移,移动的速度等数据。对于其他操作系统,也存在类似的方法来获得这些数据。
103、依据操作手势相对于子视图的滑动偏移状况,确定所述对象数据的显示尺寸和位置。
该步骤主要是实现对滑动手势的响应,以确定要显示的对象数据相对于滑动手势发生的尺寸和位置变化。
其中,所述对象数据包括:操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数。
可以分别针对所述m1条对象数据和所述下m2条对象数据确定显示尺寸和位置;另外,也可以根据对象数据的对象属性,对同一对象数据中属于不同属性的对象数据分别确定显示尺寸和位置。
以评论数据为例,可以分别确定评论内容的显示尺寸和位置,以及评论者标识图像的显示尺寸和位置,其中评论内容和评论者标识图像的显示尺寸和位置可以不同。
并且,可以在所述操作手势的滑动过程中在多个采样点处确定并更新所述对象数据的显示尺寸和位置。例如可以在在操作手势的滑动过程中取n个 采样点,分别针对n个采样点确定并更新所述对象数据的显示尺寸和位置,其中n为预设的正整数。这样,用户就能够在滑动过程中看到对象数据尺寸和位置的逐渐变化过程,具有一个较好的用户体验。
具体地,可以在初始显示尺寸和位置到改变的显示尺寸和位置之间取n个采样点,该n个采样点能够表示初始显示尺寸和位置到改变的显示尺寸和位置的逐渐变化,因此可以使对象数据逐渐由初始显示尺寸和位置变换到与操作手势对应的显示尺寸和位置。
操作手势相对于所述子视图的滑动偏移状况可以包括:根据所述滑动手势的滑动距离以及对象宽度确定的滑动偏移率。优选地,可以依据预设的初始显示尺寸和目标显示尺寸,确定滑动偏移率对应的对象数据的显示尺寸;以及依据预设的初始显示位置和对象数据宽度,确定滑动偏移率对应的对象数据的显示位置。从而,当手指滑动时,可以根据滑动的偏移量来改变评论的大小比例和x轴上的位置。
具体地,可以通过如下方式依据操作手势的滑动偏移状况,确定对象数据的显示尺寸和位置。
为了方便理解,以下将评论数据作为对象数据加以说明,然而对于其他对象数据,同样能够采用如下方式来确定其显示尺寸和位置。
定义滑动前后评论大小比例差值为ds,即评论由初始显示比例到能够达到的最大目标显示比例的差值。
例如,假设初始显示比例s为1.0,当手指向右滑动时,能够达到的最大目标显示比例s为1.5,则如果评论初始显示尺寸的宽为600像素(px),高为50px,那么该评论能够放大到的目标显示尺寸将为宽为900px,高为75px。
当然,评论在放大过程中不一定能够放大到目标显示尺寸,其放大的显示尺寸还受到滑动偏移率的影响,其具体影响将随后作进一步说明。
定义评论右边为x轴正方向。
定义评论宽度为w。
其中评论宽度是依据屏幕及子视图的宽度而预先设定的。具体地,由于各个显示终端的屏幕尺寸不同,为了能够在屏幕中以与屏幕相匹配的宽度显示评论,特别是使评论所位于的子视图的显示宽度与屏幕宽度相匹配,因此在预先设置评论宽度时,会依据各个显示终端的屏幕宽度和子视图宽度而使相应的评论宽度有所不同,
当手指右滑时候,滑动距离dw取值为[0,w]。
当手指左滑时候,滑动距离dw取值为[-w,0]。
手指滑动过程中,计算dw除以w的值可以得到滑动偏移率a,取值范围为[-1,1]。
当手指右滑时候,将所有评论大小比例由初始显示比例增加a*ds,评论原点位置在x轴上右移a*ds*w*2。
当手指左滑时候,将所有评论大小比例由初始显示比例减少a*ds,评论原点位置在x轴上左移a*ds*w*2。
其中,由于各个显示终端的屏幕尺寸不同,为了能够在屏幕中以与屏幕相匹配的宽度显示评论,特别是使评论所位于的子视图的显示宽度与屏幕宽度相匹配,因此在预先设置评论宽度时,会依据各个显示终端的屏幕尺寸而使相应的评论宽度有所不同。
以iphone5手机为例,将上述确定对象数据的显示尺寸和位置代入具体数值为:
预先定义评论宽度w=600px。
定义前后两条评论大小比例差值为0.5,
假设以评论数据的起始作为原点,则原点右边为x轴正方向,
如果手指向右滑动的距离为100,那么(手指滑动距离)/(评论宽度)得到的滑动偏移率a=100/600=1/6,
假设预设的评论初始显示位置在x=0处,宽为600,高为50,大小比例s为1.0
由于评论是向右滑动,因此将所有评论大小比例增加a*ds,则a*ds=1/6 *0.5=1/12
因此可以确定出滑动后评论的大小比例s为1+1/12,也即滑动后评论的尺寸变为,宽为650,高为54.17。
通过上述方式可以确定评论的尺寸变化。
在子视图中显示对象数据时,由于可以显示对象数据的尺寸变化,因此可以提供由远及近、由近及远的视觉效果。
依据操作手势不仅可以确定对象数据的显示尺寸,还可以确定对象数据的显示位置,对象数据显示位置的变化可以包括对象数据在x轴坐标上的变化。
通过公式a*ds*w*2,则对象数据的显示位置可以从0变为a*ds*w*2=1/6*0.5*600*2=100,即对象数据可以依据向右滑动100px的滑动手势而相应的沿x轴正方向移动100。
在ios中,可以通过cgaffinetransform来改变ui元素的大小比例(scale),位置等。
另外,需要说明的是,对于操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据而言,当用户手指滑动时,产生的效果可以是逐渐显示下m2条对象数据,逐渐隐去操作手势之前显示的m1条对象数据,因此,在接收到操作手势后,操作手势之前显示的m1条对象数据由该m1条的原始显示尺寸和原始显示位置逐渐改变成确定的m1条对象数据的目标显示尺寸和目标显示位置;而下m2条对象数据由该m2条的原始显示尺寸和原始显示位置逐渐改变成该m1条的原始显示尺寸和原始显示位置,也就是说确定的m2条对象数据的目标显示尺寸和目标显示位置与m1条的原始显示位置重合。
104、在捕捉到子视图上的操作手势后,在所述子视图上展现所述操作手势对应的对象数据变化。
该步骤主要是用于响应操作手势而将与操作手势对应的对象数据的显示尺寸或位置等的变化以移动的动画效果的方式展现给用户。当在手势滑动 过程中分别确定n个采样点中第i个采样点对应的对象数据的显示尺寸和位置时,实时渲染该第i个采样点对应的对象数据,这样就能够对手势滑动过程中的n个采样点对应的对象数据的显示尺寸和位置均实时渲染,从而得到对象数据在手势滑动过程中的变化。
如果对象数据包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,则可以分别依据所述m1条对象数据和所述下m2条对象数据的显示尺寸和位置来显示m1条和m2条对象数据。
并且,可以针对所述m1条对象数据采用渐隐方式展现,针对所述下m2条对象数据采用渐现方式展现。
为了能够在子视图上展现对象数据的变化,该步骤可以通过移动端技术,根据子视图的设计图,将单条评论进行建模以形成预设对象模型,并且可以依据预设的对象模型,将所述对象数据填充至所述子视图,从而将对象数据绘制于屏幕上。其中预设的对象模型可以包含所述对象数据在子视图中的图像属性和文本属性。
其中,子视图的大小可以根据需要进行任意设定,例如设定为仅能显示一行对象数据,需要通过手势操作而在子视图中由一个对象数据切换到另一个对象数据。
可以将步骤101获取对象数据时所建立的存储用的数据模型中的对象数据进性反序列化变化以得到需要的数据格式。
其中,步骤104所建立的对象模型与步骤101建立的对象模型可以作为一个预设的对象模型,或者作为两个独立的对象模型。
以对象数据为评论数据为例,在ios实现上,单条评论可以设计为一个用户界面视图(uiview),该用户界面视图中包含一个用户界面图像视图(uiimageview),用来显示评论作者头像,一个用户界面标签(uilabel)用来显示评论内容。
其中步骤104可以通过步骤101提供的数据绘制出相应的评论并显示。
可以根据用户的手势操作预先获取操作手势前后的m条对象数据并缓存 起来,通过上述方式可以加快显示速度。其中m为预设的正整数,且m条操作数据包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据。
可以首先将对象数据以初始显示尺寸和显示位置展现在视图中,当确定出与滑动偏移率对应的对象数据的显示尺寸和显示位置后,则可以随时更新其初始值,因此可以将由初始值展示的对象数据以更新后的值进行展现。
另外,可以将对象数据中对应于各对象属性的数据作为独立的对象数据以确定其显示尺寸和显示位置。例如将评论数据所包含的评论内容和评论者标识图像分别以不同的显示尺寸和不同的显示位置进行显示,其分别显示可以通过分别设置对象不同属性数据的初始显示尺寸和目标显示尺寸,以及分别设置不同属性数据的初始显示位置和对象数据宽度来确定。
例如,在手指向右滑动时,可以将同一条评论数据的评论者标识图像按照逐渐放大并向右移动的方式显示,而将评论内容仅向右移动而不使其尺寸发生变化。
并且,显示的对象数据可以包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数,例如可以根据子视图的尺寸先显示评论内容较多的两条数据,在根据操作手势而显示下三条评论内容较少的数据。
实施例二、
图2为本发明实施例二提供的一种在屏幕中显示对象的装置结构示意图,如图2所示,该装置包括:
获取单元201,用于获取对象数据。
获取单元201可以通过移动端技术,根据后台接口,通过网络请求服务器上的对象数据,该对象数据可以是该应用界面上特定类型的对象数据,例如可以是针对应用主视图上主题数据的评论数据,包括评论内容和评论者标识图像。
其中应用主视图以及子视图均在同一应用界面中并显示在终端屏幕上。
终端可以包括手机、掌上电脑、个人通讯助理机等便携式设备。
例如以新闻应用中某一新闻的数据展现于主视图,对于该新闻的评论数据展现于该主视图包含的子视图,其中评论数据可以包括评论内容和评论者头像;该对象数据也可以包括任何与主视图上的主题数据相关的,具有较多数据内容但需要在较小空间显示的数据,例如相对于汉字的英文翻译、相对于商品的推荐以及相对于图书的目录等。
获取单元201可以将获取的对象数据依据预设的对象模型进行建模以方便存储。其中存储所用的对象模型包含对象数据的图像属性和文本属性。
以评论数据作为对象数据为例,可以从服务器维护的数据中根据数据字段提取评论内容、评论者头像以及评论者id等。
优选地,由于后台服务器上的操作系统与应用所在的操作系统可能由不同的语言编写,具有不同的语言格式,获取单元201可以从服务器所维护的数据中,获得json格式的对象数据,然后将获取的json数据序列化到预设的对象模型。
在ios实现上,可以通过给nsobject对象定义两个属性来建模,一个属性是uiimage表示评论者头像数据,一个属性是nsstring表示评论内容,并且,可以通过nsjsonserialization来将网络获取的json数据序列化到定义的模型。
捕捉单元202,用于捕捉应用主视图上包含的子视图上的操作手势。
捕捉单元202可以捕捉屏幕上的操作手势并将操作手势传递给其他单元进行处理。
其中屏幕上包含主视图以及多个子视图,并且至少一个子视图可以展现对象数据。
捕捉单元202可以判断操作手势在屏幕上的坐标,当该操作手势的坐标位于展现对象数据的子视图边界内,则确定捕捉到的是对于子视图的对象数据的操作手势。
该操作手势可以包括点击子视图上的控件的手势,优选地,子视图上的 操作手势可以包括在子视图上的滑动手势。
在ios中,可以通过uipangesturerecognizer来获得手指触摸到屏幕的坐标,移动的位移,移动的速度等数据。对于其他操作系统,也存在类似的方法来获得这些数据。
处理单元203,用于依据操作手势相对于所述子视图的滑动偏移状况,确定对象数据的显示尺寸和位置
该处理单元203主要是用于响应捕捉单元202捕捉到的手势操作,以确定要显示的对象数据相对于手势操作发生的尺寸和位置变化。
其中,所述对象数据包括:操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数。
可以分别针对所述m1条对象数据和所述下m2条对象数据确定显示尺寸和位置;
另外,也可以根据对象数据的对象属性,对同一对象数据中属于不同属性的对象数据分别确定显示尺寸和位置。
以评论数据为例,可以分别确定评论内容的显示尺寸和位置,以及评论者标识图像的显示尺寸和位置,其中评论内容和评论者标识图像的显示尺寸和位置可以不同。
并且,可以在所述操作手势的滑动过程中在多个采样点处确定并更新所述对象数据的显示尺寸和位置。例如可以在在操作手势的滑动过程中取n个采样点,分别针对n个采样点确定并更新所述对象数据的显示尺寸和位置,其中n为预设的正整数。这样,用户就能够在滑动过程中看到对象数据尺寸和位置的逐渐变化过程,具有一个较好的用户体验。
操作手势相对于所述子视图的滑动偏移状况可以包括:根据所述滑动手势的滑动距离以及对象宽度确定的滑动偏移率。
优选地,处理单元203可以依据预设的初始显示尺寸和目标显示尺寸,确定滑动偏移率对应的对象数据的显示尺寸;以及依据预设的初始显示位置和对象数据宽度,确定滑动偏移率对应的对象数据的显示位置。
从而,当手指滑动时,可以根据滑动的偏移量来改变评论的大小比例和x轴上的位置。
具体地,处理单元203可以通过执行如下操作以依据操作手势的滑动偏移状况,确定对象数据的显示尺寸和位置。
为了方便理解,以下将评论数据作为对象数据加以说明,然而对于其他对象数据,同样能够通过执行如下操作来确定其显示尺寸和位置。
定义滑动前后评论大小比例差值为ds,即评论由初始显示比例到能够达到的最大目标显示比例的差值。
当然,评论在放大过程中不一定能够放大到目标显示尺寸,其放大的显示尺寸还受到滑动偏移率的影响,其具体影响将随后作进一步说明。
定义评论右边为x轴正方向。
定义评论宽度为w,其中评论宽度是依据屏幕及子视图的宽度而预先设定的。
当手指右滑时候,滑动距离dw取值为[0,w]。
当手指左滑时候,滑动距离dw取值为[-w,0]。
手指滑动过程中,计算dw除以w的值可以得到滑动偏移率a,取值范围为[-1,1]。
当手指右滑时候,将所有评论大小比例由初始显示比例增加a*ds,评论原点位置在x轴上右移a*ds*w*2。
当手指左滑时候,将所有评论大小比例由初始显示比例减少a*ds,评论原点位置在x轴上左移a*ds*w*2。
通过处理单元203对于a*ds的计算可以确定评论的尺寸变化。
在子视图中显示对象数据时,由于可以显示对象数据的尺寸变化,因此可以提供由远及近、由近及远的视觉效果。
依据操作手势不仅可以确定对象数据的显示尺寸,还可以确定对象数据的显示位置,对象数据显示位置的变化可以包括对象数据在x轴坐标上的变化。
通过公式a*ds*w*2可以确定对象数据在x轴上的位置变化。
在ios中,可以通过cgaffinetransform来改变ui元素的大小比例(scale),位置等。
另外,需要说明的是,对于操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据而言,当用户手指滑动时,产生的效果可以是逐渐显示下m2条对象数据,逐渐隐去操作手势之前显示的m1条对象数据,因此,在接收到操作手势后,操作手势之前显示的m1条对象数据由该m1条的原始显示尺寸和原始显示位置逐渐改变成确定的m1条对象数据的目标显示尺寸和目标显示位置;而下m2条对象数据由该m2条的原始显示尺寸和原始显示位置逐渐改变成该m1条的原始显示尺寸和原始显示位置,也就是说确定的m2条对象数据的目标显示尺寸和目标显示位置与m1条的原始显示位置重合。
展现单元204,用于展示获取单元201所获取的对象数据,并用于在捕捉单元202捕捉到所述子视图上的操作手势后,在所述子视图上展现所述操作手势对应的对象数据变化。
展现单元204主要是用于响应操作手势而将与操作手势对应的对象数据的显示尺寸或位置等的变化以移动的动画效果的方式展现给用户。其是与终端屏幕、获取单元201以及处理单元203等操作单元相关的单元,用于决定在屏幕上展示的内容。
当在手势滑动过程中分别确定n个采样点中第i个采样点对应的对象数据的显示尺寸和位置时,实时渲染该第i个采样点对应的对象数据,这样就能够对手势滑动过程中的n个采样点对应的对象数据的显示尺寸和位置均实时渲染,从而得到对象数据在手势滑动过程中的变化。
如果对象数据包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,则展现单元204可以分别依据所述m1条对象数据和所述下m2条对象数据的显示尺寸和位置来显示m1条和m2条对象数据。
并且,可以针对所述m1条对象数据采用渐隐方式展现,针对所述下m2 条对象数据采用渐现方式展现。
为了能够在子视图上展现对象数据的变化,展现单元204可以通过移动端技术,根据子视图的设计图,将单条评论进行建模以形成预设对象模型,并且可以依据预设的对象模型,将所述对象数据填充至所述子视图,从而将对象数据绘制于屏幕上。其中展现单元204预设的对象模型可以包含所述对象数据在子视图中的图像属性和文本属性。
其中,子视图的大小可以根据需要进行任意设定,例如设定为仅能显示一行对象数据,需要通过手势操作而在子视图中由一个对象数据切换到另一个对象数据。
展现单元204可以将获取单元201获取对象数据时所建立的存储用的数据模型中的对象数据进性反序列化变化以得到需要的数据格式。
其中,展现单元204所建立的对象模型与获取单元201建立的对象模型可以作为一个预设的对象模型,或者作为两个独立的对象模型。
以对象数据为评论数据为例,在ios实现上,单条评论可以设计为一个用户界面视图(uiview),该用户界面视图中包含一个用户界面图像视图(uiimageview),用来显示评论作者头像,一个用户界面标签(uilabel)用来显示评论内容。
展现单元204通过获取单元201提供的数据绘制出相应的评论并显示。
展现单元204可以根据用户的手势操作预先获取操作手势前后的m条对象数据并缓存起来,通过上述方式可以加快显示速度。其中m为预设的正整数,且m条操作数据包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据。
展现单元204可以首先将对象数据以初始显示尺寸和显示位置展现在视图中,当处理单元203确定出与滑动偏移率对应的对象数据的显示尺寸和显示位置后,则可以随时通知展现单元204更新其初始值,因此展现单元204可以将由初始值展示的对象数据以更新后的值进行展现。
另外,可以将对象数据中对应于各对象属性的数据作为独立的对象数据 以确定其显示尺寸和显示位置。例如将评论数据所包含的评论内容和评论者标识图像分别以不同的显示尺寸和不同的显示位置进行显示,其分别显示可以通过分别设置对象不同属性数据的初始显示尺寸和目标显示尺寸,以及分别设置不同属性数据的初始显示位置和对象数据宽度来确定。
并且,显示的对象数据可以包括操作手势之前显示的m1条对象数据以及操作手势对应的下m2条对象数据,所述m1和m2为正整数,例如可以根据子视图的尺寸先显示评论内容较多的两条数据,在根据操作手势而显示下三条评论内容较少的数据。
图3a、3b为实施本发明的方法或装置的实施效果图。其中,图3a为本发明在手势操作之前展现的m1、m2条对象数据的效果图,图3b为本发明在手势操作之后展现的m1、m2条对象数据的效果图。如图3a、3b所示,图3a、3b中顶部展现有播放内容的部分为主视图上的主题数据,中下部(图中框出部分)显示有头像和评论内容的部分为子视图,且图3a的子视图部分已经标明有m1条对象数据以及m2条对象数据。图3a是手势操作之前显示的m1、m2条对象数据的初始显示尺寸和显示位置,图3b是当操作手势为向右滑动后显示的m2条对象数据的目标显示尺寸和显示位置,图3b中由于m1条对象数据根据操作手势而确定的目标显示位置位于子视图之外,因此不可见。通过手势操作,可以使m1条对象数据和m2条对象数据在子视图中进行切换,并且切换过程中是以对象数据的尺寸和位置逐渐变化的动态效果显示的。
通过实施本发明的技术方案,可以在终端屏幕中,只需一小块位置,则可以以动画效果展现评论并能够根据操作手势快速切换查看。
通过本发明的实施例,可以实现如下技术效果:
(1)由于仅在提供的子空间中显示对象数据,占用屏幕空间小;
(2)与用户交互方便,例如通过操作手势中的右滑即可查看下一条评论,左滑可看上一条评论;
(3)通过滑动可以显示动效效果,从而以3d视觉展示来实现在一行的空间内能展示多条评论,增加用户体验。
在本发明所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。