CN104991707B - 一种显示用户界面方法及装置 - Google Patents
一种显示用户界面方法及装置 Download PDFInfo
- Publication number
- CN104991707B CN104991707B CN201510427980.8A CN201510427980A CN104991707B CN 104991707 B CN104991707 B CN 104991707B CN 201510427980 A CN201510427980 A CN 201510427980A CN 104991707 B CN104991707 B CN 104991707B
- Authority
- CN
- China
- Prior art keywords
- control
- container
- description information
- depth
- user interface
- 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.)
- Active
Links
Abstract
本发明提供了一种显示用户界面方法及装置,涉及智能终端领域,用以方便开发人员能够根据用户界面中的显示的深度区分不同层次的控件,以及控件之间的隶属关系。该方法包括:从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;将控件描述信息封装进三维显示容器中;三维显示容器用于控制将控件描述信息中的所有控件三维显示;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。
Description
技术领域
本发明涉及智能终端领域,尤其涉及一种显示用户界面(英文全称:UserInterface,英文简称:UI)方法及装置。
背景技术
用户界面是智能终端的操作系统和用户之间进行交互和信息交换的媒介,它将智能终端中的数据以便于用户接受的形式进行呈现。用户能够通过用户界面呈现出的信息完成人机交互。
用户界面中通常显示有多个控件,通用的控件一般是通过View类和ViewGroup类定义,其中View类是描述控件的基类,ViewGroup类可以继承View类和ViewGroup类,是控件的容器。一个复杂的用户界面可能会由多个View类以及多个ViewGroup类组成,按照多个ViewGroup类之间的继承关系,各控件之间的关系分层展开。
在智能终端的开发过程中,需要对用户界面中控件的进行调整。在调整控件时,开发人员需要实时显示控件调整后具体的显示情况。现有技术的智能终端中提供“开发人员选项”中的“显示布局边界”功能能够实时显示控件的边界,以便开发人员对各个控件进行调整。但是,现有技术的显示控件的方式无法区分用户界面中相邻两个控件的边界区分显示,如此开发人员无法根据用户界面直观判断出各个控件之间的层次关系。
发明内容
本发明的实施例提供一种显示用户界面方法及装置,通过三维立体的方式显示控件,以便开发人员能够根据用户界面中的显示的深度区分不同层次的控件,以及控件之间的隶属关系。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供了一种显示用户界面的方法,包括:从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;各控件包括至少一个容器控件和多个基类控件;将控件描述信息封装进三维显示容器中;三维显示容器用于控制将控件描述信息中的所有控件三维显示;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。
第二方面,本发明实施例提供了一种显示用户界面的装置,包括:获取单元,用于从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;各控件包括至少一个容器控件和多个基类控件;封装单元,用于将控件描述信息封装进三维显示容器中;三维显示容器用于控制将控件描述信息中的所有控件三维显示;深度确定单元,用于根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;绘制单元,用于根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。
本发明实施例提供了一种显示用户界面方法及装置,从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;将控件描述信息封装进三维显示容器中;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。这样,通过把从应用程序获取的控件描述信息封装至自定义的三维显示容器中,在显示过程中,利用控件描述信息中各控件之间的关系确定各控件的深度,将各控件进行三维显示,最终使得用户能够根据用户界面中三维显示的各控件的不同深度,明确各控件之间的继承关系。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种显示用户界面的方法;
图2为本发明实施例提供的一种控件间继承关系的示意图;
图3为图2所示的控件之间继承关系在用户界面三维显示的示意图;
图4为本发明实施例提供的另一种显示用户界面的方法;
图5为本发明实施例提供的一种显示用户界面的装置的功能示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种显示用户界面的方法。如图1所示,包括:
101、从应用程序获取控件描述信息。
其中,控件描述信息包括各控件的平面位置信息和容器控件的继承关系,各控件包括至少一个容器控件和多个基类控件。
需要说明的是,本发明所有实施例中所描述的控件是在用户界面上显示的每一模块。控件的平面位置信息是用于确定控件在用户界面显示的平面位置,它可以包括控件布局方式、和/或控件的长和宽、和/或显示坐标,和/或控件所要加载的图片等信息。容器控件的继承关系是指每一容器控件分别继承了哪些控件。
控件是由xml(eXtensible Markup Language,可扩展标记语言)文件静态定义的或者是在应用程序运行过程中由程序代码主动创建的。应用程序从xml文件中和/或应用程序的代码中获取需要显示的控件的描述信息,然后可以从应用程序获得控件描述信息。
需要说明的是,其中,容器控件的类型包括:ViewGroup类和/或ViewGroup类的派生类;基类控件的类型包括:View类和/或View类的派生类。
其中,ViewGroup类的派生类可以包括:
AbsoluteLayout,AdapterView,FragmentBreadCrumbs,FrameLayout,LinearLayout,RelativeLayout,SlidingDrawer等ViewGroup类派生出的直接子类;
ViewGroup类的派生类还可以包括:
AbsListView,AbsSpinner,AdapterViewAnimator,AdapterViewFlipper,AppWidgetHostView,CalendarView,DatePicker,DialerFilter,ExpandableListView,Gallery,GestureOverlayView,GridView,HorizontalScrollView,ImageSwitcher,ListView等ViewGroup类派生出的间接子类。
View类的派生类可以包括:
AnalogClock,ImageView,KeyboardView,rogressBar,SurfaceView,TextView,ViewGroup,ViewStub等View类派生出的直接子类;
View类的派生类还可以包括:
AbsListView,AbsSeekBar,AbsSpinner,AbsoluteLayout,AdapterView,AdapterViewAnimator,AdapterViewFlipper,AppWidgetHostView,AutoCompleteTextView,Button,CalendarView,CheckBox,CheckedTextView,Chronometer,CompoundButton等View类派生出的间接子类。
具体的,从应用程序获取需要显示的控件的相关信息。
102、将控件描述信息封装进三维显示容器中。
其中,三维显示容器用于控制将控件描述信息中的所有控件三维显示。
需要说明的是,现有技术中直接将应用程序中需要显示的控件的相关信息发送至操作系统进行显示,本发明所有实施例中都在应用程序与操作系统之间插入一个自定义的三维显示容器,并对三维显示容器采用钩子(英文:hook)技术,如此可以改变现有技术中的流程,在应用程序将控件描述信息发送至操作系统之前,将控件描述信息加载至三维显示容器中。
需要说明的是,三维显示容实质上是继承所有控件描述信息的容器控件类。控件描述信息的所有控件中有一个容器控件继承其他所有控件,步骤102具体为创建新的容器控件,该控件继承控件描述信息中继承其他所有控件的容器控件。
103、根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度。
需要说明的是,将现有技术中平面显示的图形转换为立体图形,只需要在平面显示的基础上为该图形添加一个深度信息即可。
具体的,步骤103中“根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置”与现有技术中确定控件平面位置信息的方法相同,根据平面位置信息中的控件布局方式确定控件的基本位置,然后根据平面位置信息中的长度信息和宽度信息确定出图像在平面中的具体位置;或者根据平面位置信息中的显示坐标确定出图形在平面中的位置;或者根据候根据平面位置信息中的控件布局方式确定控件的基本位置,然后将需要加载的图片加载至根据基本位置确定出的相应区域中。
需要说明的是,容器控件继承可以继承基类控件和/或其他容器控件,继承其他控件的容器控件为与所继承的父类控件在三维显示时具有不同的深度。在三维显示中,可以将父类的控件显示在用户感官上离用户较近的位置,相应的,将继承父类的子类控件显示在用户感官上离用户较远的位置。其中,本发明所有实施例的深度是用于控制控件在用户感官上与用户距离远近的参数。
具体的,“根据控件描述信息中容器控件的继承关系确定各控件的深度”具体为容器控件继承的父类的所有控件设置相同的深度。有相同深度的控件中不同容器控件继承的父类控件设置相同的深度。
示例性的,如图2所示,在三维显示中,容器控件7不被别的控件继承,所以容器控件7有自己的深度;容器控件7继承容器控件6基类控件5和容器控件4,所以容器控件6、基类控件5和容器控件4有相同的深度;容器控件6继承基类控件3,容器控件4继承基类控件2和基类控件1,由于容器控件6和容器控件4具有相同的深度,所以基类控件3、基类控件2和基类控件1有相同的深度。
进一步的,可以将不同层次之间的深度差设置为相同值。具体的,将子类容器控件的深度设定为M,将继承子类容器控件的父类控件的深度设定为M+N。其中,N不为零。
需要说明的是,N不为零用于限制不同层次的控件具有不同的深度。根据设定的深度坐标所表示的含义不同,N的具体值可以为正值,也可以为负值。在用户感官上离用户较近的位置的深度设为较大值,相应的,在用户感官上离用户较远的位置的深度设为较小值的情况下,N的具体值为正值;在用户感官上离用户较近的位置的深度设为较小值,相应的,在用户感官上离用户较远的位置的深度设为较大值的情况下,N的具体值为负值。
具体的,将子类容器控件的深度设定为M,将该子类容器控件所继承的父类控件的深度设定为M+N;如果该子类容器控件所继承的父类控件中包括另一容器控件,那么可以将另一容器控件所继承的父类控件的深度设定为M+2N,以此类推。
示例性的,如图2所示的层次结构,容器控件7的深度设定为M,将容器控件6、基类控件5和容器控件4的深度设定为M+N;将基类控件3、基类控件2和基类控件1的深度设定为M+2N。
104、根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。
其中,预设的显示角度包括:用户设定的显示角度、或默认显示角度。
需要说明的是,对于三维显示的控件,若显示角度为零,则用户感受不同控件的不同深度,觉得显示出的控件为平面图像,不能感知不同控件之间的层次关系,所以需要设定显示角度,并且在需要进行三维显示时,该显示角度不为零。
需要说明的是,所有控件作为一个整体的三维图像显示给用户,所以所有的控件具有相同的显示角度。
需要说明的是,用户设定显示角度的方式可以是用户直接手动输入显示角度,还可以用户可以在触控屏上下左右滑动,终端通过用户滑动的距离调整显示角度。默认显示角度是终端出厂时设定的显示角度。在终端中有用户设定的显示角度的情况下,优先使用用户设定的显示角度在用户界面显示各控件;在终端中没有用户设定的显示角度的情况下,才使用终端默认的显示角度在用户界面显示各控件。
进一步的,在获取各控件的平面位置和深度、显示角度的情况下,将用户界面进行三维显示的方法可以是通过调用操作系统中camera类的进行转换,然后进行控件绘制;还可以是将上述参数传输至相关的三维转换软件,进行转换,然后进行控件绘制。
需要说明的是,camera类是安卓操作系统中终端自带的能将图像进行三维显示的类。
通过调用camera类进行三维显示的方法具体为:在从子类控件依次向父类控件绘制时,在绘制每一控件的过程中,将该控件平面位置、深度和显示角度传输至camera模块camera类,由camera模块camera类生成旋转矩阵,操作系统再根据旋转矩阵在canvas(画布)上绘制各控件。
其中,自定义的三维显示容器绘制三维容器中每一控件的步骤如下:
步骤一、根据控件深度计算X轴和Y轴偏移。比如tx=z*factor;ty=z*factor;其中z表示控件的深度,factor表示影响因子,不同屏幕分辨率可设置不同取值,tx和ty分别表示平面位置的在X坐标轴和Y坐标轴上的偏移量。
步骤二、根据显示角度调用Camera类生成旋转矩阵。其中显示角度包括X坐标轴的旋转角度和Y坐标轴的旋转角度。
具体使用命令如下:
mCamera.rotateX(xdegrees);
mCamera.rotateY(ydegrees);
mCamera.getMatrix(matrix)。
其中,mCamera.rotateX(xdegrees)表示调用Camera类将X坐标轴旋转xdegrees度;mCamera.rotateY(ydegrees)表示调用Camera类将Y坐标轴旋转ydegrees度;mCamera.getMatrix(matrix)表示获取将X坐标轴和Y坐标轴旋转后生成的旋转矩阵。
步骤三、canvas施加旋转矩阵。
使用命令matrix.applyToCanvas(canvas),该命令表示将步骤二中的旋转矩阵应用到指定的画布上,即根据旋转矩阵调整画布的视角。
步骤四、三维显示容器使用该canvas,在控件的原始平面位置的基础上偏移tx和ty的位置上对控件进行绘制。
示例性的,如图2所示的各控件之间的继承关系,按照三维显示出结果各层之间的深度关系示例性的可以如图3的a部分或图3的b部分所示。其中,图3的a部分是在上一层控件中显示下一层控件的边界,图3的b部分是在上一层控件中不显示下一层控件的边界。
本发明实施例提供了一种显示用户界面的方法,从应用程序获取控件描述信息;控件描述信息中包括各控件的平面位置信息和容器控件的继承关系;将控件描述信息封装进三维显示容器中;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。这样,通过把从应用程序获取的控件描述信息封装至自定义的三维显示容器中,在显示过程中,利用控件描述信息中各控件之间的关系确定各控件的深度,将各控件进行三维显示,最终使得用户能够根据用户界面中三维显示的各控件的不同深度,明确各控件之间的继承关系。
实施例二
本发明实施例提供了一种显示用户界面的方法。如图4所示,包括:
401、从应用程序获取控件描述信息。
其中,控件描述信息包括各控件的平面位置信息和容器控件的继承关系;各控件包括至少一个容器控件和多个基类控件。
具体的,可参考步骤101,在此不再赘述。
进一步的,控件描述信息还包括:各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度;。
需要说明的是,控件标识是用于标识一个控件的信息,可以是控件名称,也可以是控件编号。在控件显示时,引用图片的情况下,控件引用资源标识是指控件所引用的显示图片的图片名称或者图片的存储路径。在控件在平面中显示为长方形的情况下,控件的长度和宽度是指显示控件时,控件的长度值和宽度值。当然,除了上述信息之外,控件的描述信息还可以包括其他各种能够描述控件的信息,如控件的布局方式、控件的类型等。
402、确定是否三维显示用户界面。
需要说明的是,对于普通用户来说,用户只需要看到控件显示出的图像,并不会会对控件进行相关修改,所以在正常使用过程中,普通用户不需要将控件进行三维显示。对于终端开发人员来说,由于需要明确了解各控件之间的关系,所以需要将用户界面中的控件进行三维显示。所以在将控件进行三维显示之前,需要确定是否有进行三维显示的必要。
具体的,确定是否需要三维显示各控件的方法可以是在显示的用户界面上设置悬浮按钮,当按下该按钮时,就将当前用户界面中的控件进行三维显示;当再次按下该按钮时,将用户界面中的各控件进行平面显示;也可以是依照现有技术中平面显示布局边界的方法,在“开发人员选项”中设定“三维显示控件选项”,在该选项被选中的情况下,确定用户界面中的各控件进行三维显示;否则,将用户界面的各控件进行平面显示。
需要说明的是,根据确定出的结果不同,执行不同的步骤。在确定三维显示用户界面的情况下,执行步骤403-405;在确定平面显示用户界面的情况下,就按照现有技术中常规显示控件的方式,将控件描述信息中各控件在用户界面中进行绘制。
403、在确定三维显示用户界面的情况下,将控件描述信息封装进三维显示容器中。
其中,三维显示容器用于控制将控件描述信息中的所有控件三维显示。
具体的,在确定出三维显示用户界面的情况下,“将控件描述信息封装进三维显示容器中”的描述可参考步骤102,在此不在赘述。
404、根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度。
具体的,可参考步骤103,在此不再赘述。
405、将各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度对应显示在相应控件对应的平面位置中,并根据各控件的深度以及预设的显示角度,调用camera类,将用户界面显示为三维图像。
需要说明的是,上述各控件的控件标识、各控件引用资源标识、各控件的长度、各控件的宽度都是以字符串或数字的形式进行表示。在三维显示时,将这些字符串或数字都显示在控件平面位置中该控件的显示区域内。
具体的,根据在从子类控件依次向父类控件绘制时,在绘制每一控件的过程中,camera类根据将该控件平面位置、深度和显示角度绘制该控件,并将各控件的控件标识、引用资源标识、长度、宽度等字符串或数字形式的信息显示在深度对应的平面中,控件的平面位置所在的区域内。
本发明实施例提供了一种显示用户界面的方法,从应用程序获取控件描述信息;确定是否三维显示用户界面;在确定三维显示用户界面的情况下,将控件描述信息封装进三维显示容器中;将控件描述信息封装进三维显示容器中;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;将各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度对应显示在相应控件对应的平面位置中,并根据各控件的深度以及预设的显示角度,调用camera类,将用户界面显示为三维图像。这样,通过把从应用程序获取的控件描述信息封装至自定义的三维显示容器中,在显示过程中,利用控件描述信息中各控件之间的关系确定各控件的深度,并通过调用camera类,将各控件进行三维显示,最终使得用户能够根据用户界面中三维显示的各控件的不同深度,明确各控件之间的继承关系。进一步的,将控件的控件标识信息标注在控件上,可以方便开发人员确定需要对一个控件进行修改时,能够从xml文件中或者应用程序的代码中迅速查找到该控件的相关信息所在位置;并且将控件的长、宽等信息标注在控件上,可以方便开发人员了解该控件的相关信息,以便确定对控件进行调整的范围。
实施例三
如图5所示,本发明实施例提供了一种显示用户界面的装置的功能示意图。参考图5所示,该装置包括:获取单元501、封装单元502、确定单元503、绘制单元504。
获取单元501,用于从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;各控件包括至少一个容器控件和多个基类控件。
其中,容器控件的类型包括:ViewGroup类和/或ViewGroup类的派生类;基类控件的类型包括:View类和/或View类的派生类。
封装单元502,用于将控件描述信息封装进三维显示容器中;三维显示容器用于控制将控件描述信息中的所有控件三维显示。
确定单元503,用于根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度。
确定单元503,具体用于将子类容器控件的深度设定为M,将子类容器控件所继承的父类控件的深度设定为M+N;其中N不为零。
绘制单元504,用于根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。
绘制单元504,具体用于根据各控件的平面位置和深度、以及预设的显示角度,调用camera类,将用户界面显示为三维图像。
其中,预设的显示角度包括:用户设定的显示角度、或默认显示角度。
进一步的,控件描述信息还包括:各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度;
相应的,绘制单元504,具体用于将各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度对应显示在相应控件对应的平面位置中,并根据各控件的深度以及预设的显示角度,将用户界面显示为三维图像。
进一步的,确定单元503,还用于确定是否三维显示用户界面;
相应的,封装单元502,具体用于在确定三维显示用户界面的情况下,将控件描述信息封装进三维显示容器中。
本发明实施例提供了一种显示用户界面的装置,从应用程序获取控件描述信息;控件描述信息包括各控件的平面位置信息和容器控件的继承关系;将控件描述信息封装进三维显示容器中;根据三维显示容器内控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据控件描述信息中容器控件的继承关系确定各控件的深度;根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像。这样,通过把从应用程序获取的控件描述信息封装至自定义的三维显示容器中,在显示过程中,利用控件描述信息中各控件之间的关系确定各控件的深度,将各控件进行三维显示,最终使得用户能够根据用户界面中三维显示的各控件的不同深度,明确各控件之间的继承关系。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种显示用户界面的方法,其特征在于,包括:
从应用程序获取控件描述信息;所述控件描述信息包括各控件的平面位置信息和容器控件的继承关系;所述各控件包括至少一个容器控件和多个基类控件;
将所述控件描述信息封装进三维显示容器中;所述三维显示容器用于控制将所述控件描述信息中的所有控件三维显示;
根据所述三维显示容器内所述控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据所述控件描述信息中容器控件的继承关系确定各控件的深度;
根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像;
所述根据所述控件描述信息中容器控件继承关系确定各控件的深度包括:
将子类容器控件的深度设定为M,将所述子类容器控件所继承的父类控件的深度设定为M+N;其中N不为零。
2.根据权利要求1所述的方法,其特征在于,在将所述控件描述信息封装进三维显示容器中之前,还包括:
确定是否三维显示用户界面;
所述将所述控件描述信息封装进三维显示容器中包括:
在确定三维显示用户界面的情况下,将所述控件描述信息封装进三维显示容器中。
3.根据权利要求1所述的方法,其特征在于,所述根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像包括:
根据各控件的平面位置和深度、以及预设的显示角度,调用相机camera类,将用户界面显示为三维图像。
4.根据权利要求1所述的方法,其特征在于,所述控件描述信息还包括:各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度;
所述根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像包括:
将所述各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度对应显示在相应控件对应的平面位置中,并根据各控件的深度以及预设的显示角度,将用户界面显示为三维图像。
5.根据权利要求1所述的方法,其特征在于,所述预设的显示角度包括:用户设定的显示角度、或默认显示角度。
6.一种显示用户界面的装置,其特征在于,包括:
获取单元,用于从应用程序获取控件描述信息;所述控件描述信息包括各控件的平面位置信息和容器控件的继承关系;所述各控件包括至少一个容器控件和多个基类控件;
封装单元,用于将所述控件描述信息封装进三维显示容器中;所述三维显示容器用于控制将所述控件描述信息中的所有控件三维显示;
深度确定单元,用于根据所述三维显示容器内所述控件描述信息中各控件的平面位置信息确定各控件的平面位置,并根据所述控件描述信息中容器控件的继承关系确定各控件的深度;
绘制单元,用于根据各控件的平面位置和深度、以及预设的显示角度,将用户界面显示为三维图像;
所述深度确定单元,具体用于将子类容器控件的深度设定为M,将所述子类容器控件所继承的父类控件的深度设定为M+N;其中N不为零。
7.根据权利要求6所述的装置,其特征在于,
所述确定单元,还用于确定是否三维显示用户界面;
所述封装单元,具体用于在确定三维显示用户界面的情况下,将所述控件描述信息封装进三维显示容器中。
8.根据权利要求6所述的装置,其特征在于,所述控件描述信息还包括:各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度;
所述绘制单元,具体用于将所述各控件的控件标识、和/或各控件引用资源标识、和/或各控件的长度、和/或各控件的宽度对应显示在相应控件对应的平面位置中,并根据各控件的深度以及预设的显示角度,将用户界面显示为三维图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510427980.8A CN104991707B (zh) | 2015-07-20 | 2015-07-20 | 一种显示用户界面方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510427980.8A CN104991707B (zh) | 2015-07-20 | 2015-07-20 | 一种显示用户界面方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104991707A CN104991707A (zh) | 2015-10-21 |
CN104991707B true CN104991707B (zh) | 2019-01-22 |
Family
ID=54303523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510427980.8A Active CN104991707B (zh) | 2015-07-20 | 2015-07-20 | 一种显示用户界面方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104991707B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105912310A (zh) * | 2015-12-04 | 2016-08-31 | 乐视致新电子科技(天津)有限公司 | 基于虚拟现实应用的用户界面控件实现方法和装置 |
CN107426599B (zh) * | 2017-06-29 | 2020-02-07 | 武汉斗鱼网络科技有限公司 | 一种浮层管理方法及系统 |
CN108629030B (zh) * | 2018-05-09 | 2019-11-19 | 成都四方伟业软件股份有限公司 | 数据显示方法及装置 |
CN111797090B (zh) * | 2019-09-16 | 2022-07-22 | 厦门雅基软件有限公司 | 描述信息的存储方法、描述信息的访问方法和装置 |
CN114138143A (zh) * | 2021-11-23 | 2022-03-04 | 北京三快在线科技有限公司 | 查询界面的显示方法、装置、终端及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214065A (zh) * | 2010-04-05 | 2011-10-12 | Lg电子株式会社 | 移动终端及其图像显示控制方法 |
CN103369130A (zh) * | 2012-04-10 | 2013-10-23 | Lg电子株式会社 | 显示设备及其控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101602363B1 (ko) * | 2008-09-11 | 2016-03-10 | 엘지전자 주식회사 | 3차원 사용자 인터페이스의 제어방법과 이를 이용한 이동 단말기 |
-
2015
- 2015-07-20 CN CN201510427980.8A patent/CN104991707B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214065A (zh) * | 2010-04-05 | 2011-10-12 | Lg电子株式会社 | 移动终端及其图像显示控制方法 |
CN103369130A (zh) * | 2012-04-10 | 2013-10-23 | Lg电子株式会社 | 显示设备及其控制方法 |
Non-Patent Citations (3)
Title |
---|
Android三维控件技术研究;郭峰;《中国优秀硕士学位论文全文数据库 信息科技辑》;20141015;第1-68页 |
iOS 8人机交互指南(1);暮春小友;《http://www.jianshu.com/p/235e247e7467》;20150327;第1-9页 |
Material Design:扁而不平;泡在网上的日子;《http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0718/3199.html》;20150718;第1-12页 |
Also Published As
Publication number | Publication date |
---|---|
CN104991707A (zh) | 2015-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104991707B (zh) | 一种显示用户界面方法及装置 | |
AU2018211356B2 (en) | Image completion with improved deep neural networks | |
KR20220028000A (ko) | 3d 객체 카메라 커스터마이즈 시스템 | |
US20160364888A1 (en) | Image data processing method and electronic device supporting the same | |
WO2020001234A1 (zh) | 文件夹图标显示方法、系统、可读存储介质及终端 | |
CN106873863B (zh) | 一种界面切换动画的设置方法及装置 | |
CN104866755B (zh) | 应用程序解锁界面背景图片的设置方法、装置及电子设备 | |
US20160291836A1 (en) | Smart terminal and associated method for displaying application icons | |
CN109242775B (zh) | 一种属性信息迁移方法、装置、设备以及可读存储介质 | |
CN109189295A (zh) | 显示控制方法、装置及终端设备 | |
CN113810588B (zh) | 一种图像合成方法、终端及存储介质 | |
WO2019052115A1 (zh) | 应用控件样式自定义方法、装置以及计算机可读存储介质 | |
CN110929063A (zh) | 相册生成方法、终端设备及计算机可读存储介质 | |
CN109191388A (zh) | 一种暗图像处理方法及系统 | |
KR20180111242A (ko) | 채색 가능한 콘텐트를 제공하는 전자 장치 및 그 방법 | |
CN105279422B (zh) | 用于实施安全锁屏的方法和系统 | |
CN106815020A (zh) | 一种支持用户自定义功能项的软件实现方法 | |
US20220121325A1 (en) | User interface customization per application | |
CN109445569A (zh) | 基于ar的信息处理方法、装置、设备及可读存储介质 | |
CN106354356A (zh) | 一种应用图标的管理方法及终端 | |
CN105556570A (zh) | 生成屏幕数据 | |
CN104407767A (zh) | 一种调整用户界面的方法 | |
CN104267875B (zh) | 一种拍照模式显示方法和装置 | |
WO2013142402A1 (en) | Graphical manipulation of digital images | |
CN110209861A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |