CN102200914A - 在移动终端上实现用户界面的方法和设备 - Google Patents

在移动终端上实现用户界面的方法和设备 Download PDF

Info

Publication number
CN102200914A
CN102200914A CN2011101729547A CN201110172954A CN102200914A CN 102200914 A CN102200914 A CN 102200914A CN 2011101729547 A CN2011101729547 A CN 2011101729547A CN 201110172954 A CN201110172954 A CN 201110172954A CN 102200914 A CN102200914 A CN 102200914A
Authority
CN
China
Prior art keywords
class
platform
symbian
user interface
guichan
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.)
Granted
Application number
CN2011101729547A
Other languages
English (en)
Other versions
CN102200914B (zh
Inventor
刘侃
王振兴
鞠训卓
璩介业
李兴波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Shenzhou Taiyue Software Co Ltd
Original Assignee
Beijing Shenzhou Taiyue Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Shenzhou Taiyue Software Co Ltd filed Critical Beijing Shenzhou Taiyue Software Co Ltd
Priority to CN2011101729547A priority Critical patent/CN102200914B/zh
Publication of CN102200914A publication Critical patent/CN102200914A/zh
Application granted granted Critical
Publication of CN102200914B publication Critical patent/CN102200914B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种在移动终端上实现用户界面的方法和设备,能够降低平台开发的难度,缩短平台开发的周期,提高代码的重用率和开发效率,实现所期望的用户界面,提高用户体验。本发明实施例提供的方法包括:步骤一:利用如下方式将Guichan移植到Symbian S60平台上,并对该平台进行封装,得到用户界面开发平台:通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;通过继承Symbian S60平台的CAknAppUi类,创建视图控制类SymbianUI;通过继承Symbian S60平台的CCoeControl类创建视图类SymbianView;继承自Guichan的Widget类创建控件类;封装Symbian S60平台中用于资源管理的类,并创建主题管理类VThemeManager,以对内存中的资源进行管理;步骤二:选取所需的用户界面资源,利用该用户界面开发平台实现所需的用户界面。

Description

在移动终端上实现用户界面的方法和设备
技术领域
本发明涉及用户界面开发领域,尤其是涉及一种在移动终端上实现用户界面的方法和设备。
背景技术
随着市场上手机软件的可编程能力越来越强,手机软件开发平台和产业链的逐渐成熟,手机上的客户端软件也逐渐多了起来,如手机即时通信软件、手机浏览器软件等等。
这些客户端软件凭着丰富的应用、以用户为中心的体验、良好的业务感知度逐渐成为无线应用协议(Wireless Application Protocol,WAP)业务之后的又一类重要网络应用。目前的移动软件开发,主要指手机上的上层应用软件开发,已经逐渐从传统的嵌入式开发中相对独立出来,成为了软件行业的新兴热点。
手机客户端软件的用户界面(User Interface,UI)设计和开发在整个软件开发过程占据相当重要的比重,对于没有相关积累的团队来说,软件UI开发会占软件全部工作量的40%左右。
塞班(Symbian)Series 60(下文简写为Symbian S60)平台为目前市场上流行的一款手机UI平台,广泛地被众多厂商所采用和研发,具有很大基数的用户群。
然而,现有Symbian S60平台也存在一些缺点,例如,对Symbian S60平台的开发需要在其专有的软件开发工具SymbianSDK上进行,这就要求开发者必须掌握大量的SymbianSDK知识,开发难度相对较大,开发周期过长;在Symbian S60平台的开发过程中,代码重用率很低,导致开发效率和资源利用率也较低;并且,相比于市场上其他的手机平台(如Andriod,iOS),目前Symbian S60平台所能实现的用户界面还是相对比较单调的,用户体验不高,已经无法实际的需要。
发明内容
本发明实施例提供了一种在移动终端上实现用户界面的方法和设备,能够降低平台开发的难度,缩短平台开发的周期,提高代码的重用率和开发效率,实现所期望的用户界面,提高用户体验。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种在移动终端上实现用户界面的方法,包括:
步骤一:利用如下方式将开源库Guichan移植到塞班Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台:
通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
通过继承Symbian S60平台的UI控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
通过继承Symbian S60平台的控件类CCoeControl,创建所述用户界面开发平台的视图类SymbianView;
通过继承Guichan的控件基类Widget,创建所述用户界面开发平台的控件类;
封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理;
步骤二:选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面。
本发明实施例还提供了一种在移动终端上实现用户界面的装置,所述装置包括开发平台建立单元和用户界面实现单元,
所述开发平台建立单元,将开源库Guichan移植到塞班Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台;
所述用户界面实现单元,选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面;
其中,所述开发平台建立单元具体包括:
adapter类创建模块,通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
视图控制类创建模块,通过继承Symbian S60平台的UI控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
视图类创建模块,通过继承Symbian S60平台的CCoeControl类,创建所述用户界面开发平台的视图类Symbian View;
控件类创建模块,通过继承Guichan的Widget类,创建所述用户界面开发平台的控件类;
主题管理类创建模块,封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理。
由上述可见,本发明实施例针对Symbian S60平台,提供了一种新型的基于开源库Guichan的用户界面开发方案,通过创建适用于Symbian S60平台的Guichan的adapter类等技术手段将Guichan移植到Symbian S60平台,并封装Symbian S60平台本身的特性,从而使开发者在开发过程中无需额外掌握大量SymbianSDK的专有知识,大大降低了平台开发的难度,缩短了平台开发的周期。
本发明实施例的技术方案提供的用户界面开发平台的整体框架设计,能够提高代码的重用率,提高开发效率;并且,本发明实施例的技术方案能够根据自定义选取的用户界面资源,灵活进行各种复杂的用户界面的开发,实现所期望的用户界面,提高了用户体验。
本发明实施例提供了一种适用于Symbian S60平台的改进的用户界面开发方案,能够兼容现有的Symbian S60手机平台,提高现有资源的利用率,在提升用户界面平台性能的同时,最大限度地避免了对现有Symbian S60用户的影响,具有较高的应用前景和商业价值。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种在移动终端上实现用户界面的方法流程示意图;
图2为本发明实施例二提供的SymbianUI类的继承关系示意图;
图3为本发明实施例二提供的SymbianView类的关系示意图;
图4为本发明实施例二提供的控件类的继承关系示意图;
图5为本发明实施例二提供的VThemeManager类引用关系示意图;
图6为本发明实施例三中Helloworld应用程序的关系示意图;
图7为本发明实施例四提供的一种在移动终端上实现用户界面的装置结构示意图。
具体实施方式
下面将结合本发明的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例一提供了一种在移动终端上实现用户界面的方法,参见图1,所述方法包括:
步骤一:利用如下方式将开源库Guichan移植到Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台:
11:通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
12:通过继承Symbian S60平台的用户界面(User Interface,UI)控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
13:通过继承Symbian S60平台的CCoeControl类,创建所述用户界面开发平台的视图类SymbianView;
14:通过继承Guichan的Widget类,创建所述用户界面开发平台的控件类;
15:封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理;
步骤二:21:选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面。
由上述可见,本发明实施例针对Symbian S60平台,提供了一种新型的基于开源库Guichan的用户界面开发方案,通过创建适用于Symbian S60平台的Guichan的adapter类等技术手段将Guichan移植到Symbian S60平台,并封装Symbian S60平台本身的特性,从而使开发者在开发过程中无需额外掌握大量SymbianSDK的专有知识,大大降低了平台开发的难度,缩短了平台开发的周期。
本发明实施例的技术方案提供的用户界面开发平台的整体框架设计,能够提高代码的重用率,提高开发效率;并且,本发明实施例的技术方案能够根据自定义选取的用户界面资源,灵活进行各种复杂的用户界面的开发,实现所期望的用户界面,提高了用户体验。
本发明实施例提供了一种适用于Symbian S60平台的改进的用户界面开发方案,能够兼容现有的Symbian S60手机平台,提高现有资源的利用率,在提升用户界面平台性能的同时,最大限度地避免了对现有Symbian S60用户的影响,具有较高的应用前景和商业价值。
下面主要从adapter类、SymbianUI类、SymbianView类、控件类和VThemeManager类五个方面,对本发明实施例二提供的在移动终端上实现用户界面的方法及相应的用户界面开发平台进行详细说明。
1)用于Symbian S60平台的Guichan的adapter类
在此主要以上述adapter类包括事件处理类(表示为SymbianInput)、字体处理类(表示为SymbianFont)和图形绘制处理类(表示为SymbianGDIRender)的场景为例进行描述。
a)SymbianInput类
通过继承Guichan的输入类(表示为Input),实现能够用于Symbian S60平台的Guichan的SymbianInput类。
Input类定义了键盘(Key)事件队列(表示为mKeyInputQueue)和鼠标(Mouse)事件队列(表示为mMouseInputQueue),以及对队列操作的一些接口方法。
SymbianInput类需要实现Input类定义的接口方法,该类的核心思想是把收到的key事件和Mouse事件分别存储到mKeyInputQueue队列和mMouseInputQueue队列中,然后通过扫描这两个队列分别把Key事件和Mouse事件分发给对应的事件源控件。
b)SymbianFont类
通过继承Guichan的字体类(表示为F ont),以及引用Symbian S60平台的字体类(表示为CFont),实现能够用于Symbian S60平台的Guichan的SymbianFont类。
Font类定义了一些接口方法,SymbianFont类引用了CFont类,并且基于CFont类实现Font类定义的接口方法,以提供给Guichan使用。
c)SymbianGDIRender类
通过继承Guichan的图形类(表示为Graphics),以及引用Symbian S60平台的绘制类(表示为CFbsBitmapDevice)和(表示为CFbsBitGc),实现能够用于Symbian S60平台的Guichan的SymbianGDIRender类。
通过继承Guichan的Graphics类,实现SymbianGDIRender类。Graphics类定义了一些接口方法。SymbianGDIRender类引用了Symbian S60平台提供的绘制类CFbsBitmapDevice和CFbsBitGc,并且基于这两个类实现Graphics类定义的接口方法,用于提供给Guichan使用。
2)SymbianUI类
参见图2,SymbianUI类继承自Symbian S60平台的UI控制类CAknAppUi,封装了与Symbian S60平台相关的视图切换框架。
上述CAknAppUi类是Symbian S60平台框架核心中必须的一个类,本方案利用SymbianUI类对其进行封装,以保证新实现的用户界面开发平台能够基于Symbian S60平台正常运行。
3)SymbianView类
通过继承视图接口类(表示为VView)和Symbian S60平台上的控件类(表示为CCoeControl),以及引用相应的adapter类,得到所述用户界面开发平台的视图类(表示为SymbianView),
其中,参见图3,VView类继承页面管理类(表示为VFormManager),VFormManager类引用页面类(表示为VForm)和图形用户界面控制类(表示为VGUI),VForm类继承Guichan的Container类,VGUI类继承Guichan的图形用户界面控制类(表示为GUI)。
上述SymbianView类所引用的相应的adapter类为SymbianGDIRender类。
页面类VForm:是应用程序的窗口界面实现类,作为一个容器来使用可以在页面中布局的基本控件,以实现应用程序各种功能要求;
页面管理类VFormManager:负责管理页面,包括页面间的切换,页面尺寸变化(sizechange)事件和主题变化(themechange)事件的分发等;
视图类VView:是一个接口类,为了实现跨平台操作的功能,在该类中定义了一些纯虚接口用以统一与平台相关的处理接口,例如NeedRedraw()方法,继承类要在该方法中实现屏幕重绘的调用。
Symbian S60中的控件类CCoeControl:实现接收Symbian S60平台的Key事件、触屏(或Mouse)事件、以及其它和Symbian S60平台强相关的事件。
可选的,根据用户界面开发平台所能够实现的具体功能,所述SymbianView类还引用动画类(表示为SymbianGIFControl)和渲染效果类(表示为SymbianGLESControl),其中,SymbianGIFControl类具有支持播放图像互换格式(Graphics Interchange Format,GIF)动画的功能,SymbianGLESControl类具有支持播放3D动画的功能。
SymbianGIFControl类和SymbianGLESControl类都为本方案提供的用户界面开发平台中新设置的的类,其创建的具体方式可以参照本用户界面开发平台中的其他类的创建方式。
4)控件类
参见图4,通过多重继承自定义的控件类(表示为VControl)和Guichan的Widget类,创建所述用户界面开发平台的控件类,
所述VControl类具有支持控件皮肤的相关功能,例如控件透明处理、交互效果等等;
Widget类为Guichan中所有控件的基类,本方案中中的所有控件类都从该控制基类继承以实现Guichan的事件处理逻辑。
示例性的,上述控件类包括下述的一种或其组合:
按钮类(表示为VButton),图像按钮类(表示为VImageButton),图像框类(表示为VImageBox),标签类(表示为VLabel),复选框类(表示为VCheckBox),单选框类(表示为VRadioBox),列表类(表示为VList),滚动区类(表示为VScrollArea),页签类(表示为VTab),群组框类(表示为VGroupBox),以及文本框类(表示为VTextBox)。
5)VThemeManager类
参见图5,VThemeManager类引用环境管理类(表示为VEnviromentManager),图片资源管理类(表示为VImageManager),字体管理类(表示为VFontManager),文本资源管理类(表示为VStringManager),颜色管理类(表示为VColorManager),音频管理类(表示为VSoundManager)和布局管理类(表示为VLayoutManager);
其中,上述VThemeManager类所引用的各个类对原有Symbian S60平台上的功能进行了封装,例如:
封装Symbian S60平台中用于环境管理的类,并基于所述封装后的类创建VEnviromentManager类;
封装Symbian S60平台中用于图片管理的类,并基于所述封装后的类创建VImageManager类;
封装Symbian S60平台中用于字体管理的类,并基于所述封装后的类创建VFontManager类;
封装Symbian S60平台中用于文本管理的类,并基于所述封装后的类创建VStringManager类;
封装Symbian S60平台中用于颜色管理的类,并基于所述封装后的类创建VColorManager类;
封装Symbian S60平台中用于音频管理的类,并基于所述封装后的类创建VSoundManager类;
封装Symbian S60平台中用于布局管理的类,并基于所述封装后的类创建VLayoutManager类。
环境管理类VEnviromentManager:该类提供了一些工具方法,如获取应用程序路径,判断文件是否存在等方法;
图片资源管理类VImageManager:该类能够为多个应用程序中的多张图片分别设置图片标识(ID),将多张图片拼接为一张组合图片,并根据上述图片ID从所述组合图片中得到所需的一张或多张图片。例如,通过预定算法把应用程序中的所有图片拼接成一张容量较大的组合图,并且设置一个图片获得(GetImage)方法利用图片ID得到每一张子图(单个的图片),这种处理方式,能够显著降低图片资源所占的内存空间,便于对图片资源的管理。
字体管理类VFontManager:该类管理应用程序的各种字体,提供获得字体的方法;
文本资源管理类VStringManager:该类通过预定方法将应用程序的字符串资源以二进制格式存储,然后提供一个字符串获取(GetString)方法通过所设置的字符串ID得到每一个文本字符串;
颜色管理类VColorManager:该类统一管理所有控件的颜色资源,提供一个颜色获取(GetColor)方法通过颜色ID得到每一个颜色值;
音频管理类VSoundManager:该类统一管理应用程序的所有音频文件,提供播放文件的方法,支持amr、wav等音频格式;
布局管理类VLayoutManager:该类支持多种布局方式,如流式布局(FlowLayout)、网格布局(GridLayout)等;
VThemeManager类统一管理上述7个管理类(Manger),提供获得各个Manager的方法,并且可以设置不同的主题,在不同的主题下管理各个Manager的资源,实现给应用程序换肤等功能。
上述仅是对本用户界面开发平台中五个核心类创建方式的描述,通过这五个核心类支撑起用户界面开发平台的主要架构,可以理解,为了本用户界面开发平台的功能更加强大,性能更加优越,还可以参照创建核心类的方式,创建其他具有相应功能的类。
由上述可见,本发明实施例针对Symbian S60平台,提供了一种新型的基于开源库Guichan的用户界面开发方案,通过创建适用于Symbian S60平台的Guichan的adapter类等技术手段将Guichan移植到Symbian S60平台,并封装Symbian S60平台本身的特性,从而使开发者在开发过程中无需额外掌握大量SymbianSDK的专有知识,大大降低了平台开发的难度,缩短了平台开发的周期。
本发明实施例的技术方案提供的用户界面开发平台的整体框架设计,能够提高代码的重用率,提高开发效率;并且,本发明实施例的技术方案能够根据自定义选取的用户界面资源,灵活进行各种复杂的用户界面的开发,实现所期望的用户界面,提高了用户体验。
本发明实施例提供了一种适用于Symbian S60平台的改进的用户界面开发方案,能够兼容现有的Symbian S60手机平台,提高现有资源的利用率,在提升用户界面平台性能的同时,最大限度地避免了对现有Symbian S60用户的影响,具有较高的应用前景和商业价值。
本发明实施例三对利用本技术方案创建的用户界面开发平台,开发名称为Helloworld的用户界面的应用程序的场景进行说明。主要包括如下处理:
T1:选取建立Helloworld应用程序所需的用户界面资源。
上述用户界面资源可以包括所需的图片、字符串、音频等资源,根据所期望建立的用户界面的风格、样式或功能的不同,选取的用户界面资源中所包含的内容也不同。
T2:生成应用程序Helloworld中所需的各种文档或资源。
通常情况下用户界面资源中原始数据的格式或容量等不能直接应用在应用程序中,需要对所选取的用户界面资源进行组织和处理,如利用用户界面开发平台中所设置的ThemesTool工具,生成应用程序中所需的各种文档或资源,如表示为HelloWorldDocument类。
T3:实现应用程序的页面类
i)通过如下代码在该类中实现应用程序所有页面的共性:
HelloworldForm:public VForm,
ii)通过如下代码继承HelloworldForm实现应用程序的页面,其中,XXX表示某一页面的名称;
XXXForm:public HelloworldForm,
通过重复步骤ii)实现应用程序的多个页面。
T4:实现应用程序的视图类
i)通过如下代码实现应用程序的视图类
HelloworldView:public SymbianView;
ii)在该类中通过实现VFormManager::ConstructForm方法提供一个生产XXXForm的工厂方法;
T5:实现应用程序的视图控制类
i)HelloworldUI:public SymbianUI,
ii)在该类中初始化用户界面开发平台;
iii)在该类中实例化一个HelloworldView:m_HelloworldView,把m_HelloworldView压入控件栈;
iv)在该类中通过调用NavigateToForm方法路由到应用程序的第一个页面;
T6:在XXXForm中添加各种控件实现该页要完成的功能;
T7:实现其他XXXForm来完成应用程序的其他功能。
参见图6,显示了Helloworld应用程序的关系示意图,其中,带有三角形端部的箭头表示继承关系,其他箭头表示引用关系。应用程序的视图控制类HelloWorldUI继承SymbianUI,应用程序包括多个页面,每个页面继承自应用程序页面类HelloWorldForm,HelloWorldForm继承自VForm。
由上述可见,本技术方案在开发用户界面时,代码重用率较高,开发方式灵活,不要求开发者掌握大量Symbian S60专有的软件开发工具SymbianSDK专有知识,降低了开发的难度。
本发明实施例四还提供了一种在移动终端上实现用户界面的装置,参见图7,所述装置包括开发平台建立单元71和用户界面实现单元72,
所述开发平台建立单元71,将开源库Guichan移植到塞班Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台;
所述用户界面实现单元72,选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面;
其中,所述开发平台建立单元具体包括:
adapter类创建模块711,通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
视图控制类创建模块712,通过继承Symbian S60平台的UI控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
视图类创建模块713,通过继承Symbian S60平台的控件类CCoecontrol创建所述用户界面开发平台的视图类SymbianView;
控件类创建模块714,通过继承Guichan的控件基类Widget创建所述用户界面开发平台的控件类;
主题管理类创建模块715,封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理。
进一步的,所述adapter类包括事件处理类SymbianInput、字体处理类SymbianFont和图形绘制处理类SymbianGDIRender,所述adapter类创建模块包括:
第一创建子模块,通过继承Guichan的输入类Input,实现能够用于Symbian S60平台的Guichan的SymbianInput类;
第二创建子模块,通过继承Guichan的字体类Font,以及引用Symbian S60平台的字体类CFont,实现能够用于Symbian S60平台的Guichan的SymbianFont类;
第三创建子模块,通过继承Guichan的图形类Graphics,以及引用Symbian S60平台的绘制类CFbsBitmapDevice和CFbsBitGc,实现能够用于Symbian S60平台的Guichan的SymbianGDIRender类。
为了便于清楚描述本发明实施例的技术方案,在发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
进一步的,上述主题管理类创建模块715所创建的主题管理类VThemeManager引用环境管理类VEnviromentManager,图片资源管理类VImageManager,字体管理类VFontManager,文本资源管理类VStringManager,颜色管理类VColorManager,音频管理类VSoundManager和布局管理类VLayoutManager。
上述控件类包括下述的一种或其组合:
按钮类VButton,图像按钮类VImageButton,图像框类VImageBox,标签类VLabel,复选框类VCheckBox,单选框类VRadioBox,列表类VList,滚动区类VScrollArea,页签类VTab,群组框类VGroupBox,以及文本框类VTextBox。
本发明装置实施例中各单元和模块的具体工作方式可以参见本发明的方法实施例。
由上述可见,本发明实施例针对Symbian S60平台,提供了一种新型的基于开源库Guichan的用户界面开发方案,通过创建适用于Symbian S60平台的Guichan的adapter类等技术手段将Guichan移植到Symbian S60平台,并封装Symbian S60平台本身的特性,从而使开发者在开发过程中无需额外掌握大量SymbianSDK的专有知识,大大降低了平台开发的难度,缩短了平台开发的周期。
本发明实施例的技术方案提供的用户界面开发平台的整体框架设计,能够提高代码的重用率,提高开发效率;并且,本发明实施例的技术方案能够根据自定义选取的用户界面资源,灵活进行各种复杂的用户界面的开发,实现所期望的用户界面,提高了用户体验。
本发明实施例提供了一种适用于Symbian S60平台的改进的用户界面开发方案,能够兼容现有的Symbian S60手机平台,提高现有资源的利用率,在提升用户界面平台性能的同时,最大限度地避免了对现有Symbian S60用户的影响,具有较高的应用前景和商业价值。
本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种在移动终端上实现用户界面的方法,其特征在于,所述方法包括:
步骤一:利用如下方式将开源库Guichan移植到塞班Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台:
通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
通过继承Symbian S60平台的用户界面UI控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
通过继承Symbian S60平台的控件类CCoeControl创建所述用户界面开发平台的视图类SymbianView;
通过继承Guichan的控件基类Widget创建所述用户界面开发平台的控件类;
封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理;
步骤二:选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面。
2.根据权利要求1所述的方法,其特征在于,所述adapter类包括事件处理类SymbianInput、字体处理类SymbianFont和图形绘制处理类SymbianGDIRender;
所述通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类包括:
通过继承Guichan的输入类Input,实现能够用于Symbian S60平台的Guichan的SymbianInput类;
通过继承Guichan的字体类Font,以及引用Symbian S60平台的字体类CFont,实现能够用于Symbian S60平台的Guichan的SymbianFont类;
通过继承Guichan的图形类Graphics,以及引用Symbian S60平台的绘制类CFbsBitmapDevice和CFbsBitGc,实现能够用于Symbian S60平台的Guichan的SymbianGDIRender类。
3.根据权利要求2所述的方法,其特征在于,所述通过继承Symbian S60平台的控件类CCoeControl创建所述用户界面开发平台的视图类SymbianView包括:
通过继承视图接口类VView和Symbian S60平台上的控件类CCoeControl,以及引用相应的adapter类,得到所述用户界面开发平台的视图类SymbianView,其中,所述VView类继承页面管理类VFormManager,VFormManager类引用页面类VForm和图形用户界面控制类VGUI,VForm类继承Guichan的容器Container类,VGUI类继承Guichan的图形用户界面控制类GUI类。
4.根据权利要求3所述的方法,其特征在于,
所述引用的相应的adapter类为SymbianGDIRender类,所述SymbianView类还引用动画类SymbianGIFControl和渲染效果类SymbianGLESControl,其中,SymbianGIFControl类具有支持播放图像互换格式GIF动画的功能,SymbianGLESControl类具有支持播放3D动画的功能。
5.根据权利要求1所述的方法,其特征在于,所述通过继承Guichan的控件基类Widget创建所述用户界面开发平台的控件类包括:
通过多重继承自定义的控件类VControl和Guichan的Widget类,创建所述用户界面开发平台的控件类,
所述VControl类具有支持控件皮肤的相关功能。
6.根据权利要求5所述的方法,其特征在于,所述控件类包括下述的一种或其组合:
按钮类VButton,图像按钮类VImageButton,图像框类VImageBox,标签类VLabel,复选框类VCheckBox,单选框类VRadioBox,列表类VList,滚动区类VScrollArea,页签类VTab,群组框类VGroupBox,以及文本框类VTextBox。
7.根据权利要求1所述的方法,其特征在于,所述封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理包括:
所述VThemeManager类引用环境管理类VEnviromentManager,图片资源管理类VImageManager,字体管理类VFontManager,文本资源管理类VStringManager,颜色管理类VColorManager,音频管理类VSoundManager和布局管理类VLayoutManager;
其中,
封装Symbian S60平台中用于环境管理的类,并基于所述封装后的类创建VEnviromentManager类;
封装Symbian S60平台中用于图片管理的类,并基于所述封装后的类创建VImageManager类;
封装Symbian S60平台中用于字体管理的类,并基于所述封装后的类创建VFontManager类;
封装Symbian S60平台中用于文本管理的类,并基于所述封装后的类创建VStringManager类;
封装Symbian S60平台中用于颜色管理的类,并基于所述封装后的类创建VColorManager类;
封装Symbian S60平台中用于音频管理的类,并基于所述封装后的类创建VSoundManager类;
封装Symbian S60平台中用于布局管理的类,并基于所述封装后的类创建VLayoutManager类。
8.根据权利要求7所述的方法,其特征在于,
所述VImageManager类能够为多个应用程序中的多张图片分别设置图片标识ID,将所述多张图片拼接为一张组合图片,并根据所述图片ID从所述组合图片中得到所需的图片。
9.一种在移动终端上实现用户界面的装置,其特征在于,所述装置包括开发平台建立单元和用户界面实现单元,
所述开发平台建立单元,将开源库Guichan移植到塞班Symbian S60平台上,并对Symbian S60平台进行封装,得到用户界面开发平台;
所述用户界面实现单元,选取所需的用户界面资源,利用所述用户界面开发平台实现所需的用户界面;
其中,所述开发平台建立单元具体包括:
adapter类创建模块,通过继承Guichan相应的接口类,创建能够用于Symbian S60平台的Guichan的adapter类;
视图控制类创建模块,通过继承Symbian S60平台的UI控制类CAknAppUi,创建所述用户界面开发平台的视图控制类SymbianUI;
视图类创建模块,通过继承Symbian S60平台的控件类CCoeControl创建所述用户界面开发平台的视图类SymbianView;
控件类创建模块,通过继承Guichan的控件基类Widget创建所述用户界面开发平台的控件类;
主题管理类创建模块,封装Symbian S60平台中用于资源管理的类,并创建所述用户界面开发平台的主题管理类VThemeManager,以对内存中的资源进行管理。
10.根据权利要求9所述的装置,其特征在于,
所述adapter类包括事件处理类SymbianInput、字体处理类SymbianFont和图形绘制处理类SymbianGDIRender,所述adapter类创建模块包括:
第一创建子模块,通过继承Guichan的输入类Input,实现能够用于Symbian S60平台的Guichan的SymbianInput类;
第二创建子模块,通过继承Guichan的字体类Font,以及引用Symbian S60平台的字体类CFont,实现能够用于Symbian S60平台的Guichan的SymbianFont类;
第三创建子模块,通过继承Guichan的图形类Graphics,以及引用Symbian S60平台的绘制类CFbsBitmapDevice和CFbsBitGc,实现能够用于Symbian S60平台的Guichan的SymbianGDIRender类。
CN2011101729547A 2011-06-24 2011-06-24 在移动终端上实现用户界面的方法和设备 Active CN102200914B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011101729547A CN102200914B (zh) 2011-06-24 2011-06-24 在移动终端上实现用户界面的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011101729547A CN102200914B (zh) 2011-06-24 2011-06-24 在移动终端上实现用户界面的方法和设备

Publications (2)

Publication Number Publication Date
CN102200914A true CN102200914A (zh) 2011-09-28
CN102200914B CN102200914B (zh) 2013-11-27

Family

ID=44661612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011101729547A Active CN102200914B (zh) 2011-06-24 2011-06-24 在移动终端上实现用户界面的方法和设备

Country Status (1)

Country Link
CN (1) CN102200914B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541564A (zh) * 2011-12-31 2012-07-04 东软集团股份有限公司 一种ui复用方法及装置
CN103164204A (zh) * 2011-12-15 2013-06-19 北京新媒传信科技有限公司 基于Symbian***的用户界面的生成方法和***
CN105511873A (zh) * 2015-12-02 2016-04-20 网易(杭州)网络有限公司 用户界面控件展示方法及装置
CN106575232A (zh) * 2014-08-22 2017-04-19 微软技术许可有限责任公司 图形用户界面的远程管理
CN109284165A (zh) * 2018-10-30 2019-01-29 武汉斗鱼网络科技有限公司 客户端换肤方法、装置、设备及计算机可读存储介质
CN105183556B (zh) * 2015-08-11 2019-02-05 Oppo广东移动通信有限公司 移动终端的资源管控方法和相关设备
CN109656555A (zh) * 2018-11-30 2019-04-19 深圳市汇川技术股份有限公司 操作界面实现方法、***、机器人示教器及存储介质
CN112528594A (zh) * 2020-12-16 2021-03-19 上海连尚网络科技有限公司 控件标识方法和设备
CN116185412A (zh) * 2023-04-19 2023-05-30 陕西空天信息技术有限公司 数据管理方法及装置、电子设备、存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006077281A1 (en) * 2005-01-18 2006-07-27 Nokia Corporation User interface for different displays
US20080014929A1 (en) * 2006-05-05 2008-01-17 Infosys Technologies Ltd. Occasionally connected computing for mobile web services
CN101667115A (zh) * 2008-09-02 2010-03-10 ***通信集团公司 一种部署客户端应用的终端、***及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006077281A1 (en) * 2005-01-18 2006-07-27 Nokia Corporation User interface for different displays
US20080014929A1 (en) * 2006-05-05 2008-01-17 Infosys Technologies Ltd. Occasionally connected computing for mobile web services
CN101667115A (zh) * 2008-09-02 2010-03-10 ***通信集团公司 一种部署客户端应用的终端、***及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SCOTT NYKL等: "An Overview of the STEAMiE Educational Game Engine", 《FRONTIERS IN EDUCATION CONFERENCE,2008,38TH ANNUAL》, 25 October 2008 (2008-10-25) *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164204A (zh) * 2011-12-15 2013-06-19 北京新媒传信科技有限公司 基于Symbian***的用户界面的生成方法和***
CN103164204B (zh) * 2011-12-15 2016-02-17 北京新媒传信科技有限公司 基于Symbian***的用户界面的生成方法和***
CN102541564A (zh) * 2011-12-31 2012-07-04 东软集团股份有限公司 一种ui复用方法及装置
CN106575232A (zh) * 2014-08-22 2017-04-19 微软技术许可有限责任公司 图形用户界面的远程管理
CN106575232B (zh) * 2014-08-22 2019-11-15 微软技术许可有限责任公司 图形用户界面的远程管理
CN105183556B (zh) * 2015-08-11 2019-02-05 Oppo广东移动通信有限公司 移动终端的资源管控方法和相关设备
CN105511873A (zh) * 2015-12-02 2016-04-20 网易(杭州)网络有限公司 用户界面控件展示方法及装置
CN109284165A (zh) * 2018-10-30 2019-01-29 武汉斗鱼网络科技有限公司 客户端换肤方法、装置、设备及计算机可读存储介质
CN109284165B (zh) * 2018-10-30 2021-11-09 武汉斗鱼网络科技有限公司 客户端换肤方法、装置、设备及计算机可读存储介质
CN109656555A (zh) * 2018-11-30 2019-04-19 深圳市汇川技术股份有限公司 操作界面实现方法、***、机器人示教器及存储介质
CN112528594A (zh) * 2020-12-16 2021-03-19 上海连尚网络科技有限公司 控件标识方法和设备
CN112528594B (zh) * 2020-12-16 2024-04-12 上海尚往网络科技有限公司 控件标识方法和设备
CN116185412A (zh) * 2023-04-19 2023-05-30 陕西空天信息技术有限公司 数据管理方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN102200914B (zh) 2013-11-27

Similar Documents

Publication Publication Date Title
CN102200914B (zh) 在移动终端上实现用户界面的方法和设备
CN1241095C (zh) 表达数据控制***、构成该***的表达数据控制装置
JP5713459B2 (ja) グラフィックオブジェクトの表示
CN104484189B (zh) 一种应用界面的构建及设计方法
US20090064039A1 (en) List item layouts system and method
Smith et al. Android recipes: a problem-solution approach
CN103092612B (zh) 实现安卓操作***3d桌面贴图的方法及电子装置
CN103164204B (zh) 基于Symbian***的用户界面的生成方法和***
US20090313004A1 (en) Platform-Independent Application Development Framework
CN104685466B (zh) 用于提供多个视图的浏览器级背景页面
CN1534476A (zh) 矢量图形的标记语言和对象模型
CN101421761A (zh) 视件和场景图接口
JP3760904B2 (ja) Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム
US8884981B2 (en) Dynamically reconfigurable graphics layer system and method
CN103543993A (zh) 应用程序构建方法和***
CN102968755A (zh) 基元组成
CN103150154A (zh) 一种应用程序插件的实现方法及装置
CN105453097A (zh) 受约束驱动程序平台在用户模式下在沙箱中运行驱动程序
CN112653584A (zh) 一种基于组件能力的5g消息编排方法及编排工具箱
CN103412748A (zh) 嵌入式平台的用户界面的显示控制方法、装置及***
CN112445564B (zh) 界面显示方法及电子设备、计算机可读存储介质
CN1661553A (zh) 交互式无线应用程序***和方法
EP2540066A2 (en) System and method for providing end to end interactive mobile applications using sms
Magni Delphi GUI Programming with FireMonkey: Unleash the full potential of the FMX framework to build exciting cross-platform apps with Embarcadero Delphi
CN114840194A (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
C14 Grant of patent or utility model
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: Room 818, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080

Patentee after: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd.

Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building A block 5 layer

Patentee before: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd.

CP02 Change in the address of a patent holder