Uikon-Eikon-Avkon-Qikon

来源:互联网 发布:2016海南行知天下答案 编辑:程序博客网 时间:2024/05/16 12:02

 收藏

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://shujiantang.blogbus.com/logs/14022144.html

Uikon-Eikon-Avkon-Qikon
在Symbian OS v5中,图形化框架被称为Eikon。该版本最初被设计为同时支持8位字符narrow和16位字符Unicode。但是,最终只有narrow被支持。

在Symbian OS v5.1中,作为一项必须的改进,Unicode被支持。自该版之后,Symbian操作系统仅支持Unicode,而不再支持narrow。为了反映这个变化,图形化框架的名称就由原来的Eikon改为Uikon。

Symbian操作系统之后的所用版本都能够根据目标设备的特点实现用户界面的定制,诸如屏幕的尺寸和纵横比,是否支持键盘或手写输入,以及相对意义上的以声音或数据为中心的应用。这些差异大多由建于Uikon层之上的附加UI层实现。基于Symbian OS v6.1的S60用名为Avkon的附加层修改底层Uikon框架的行为和外观;基于Symbian OS v7.0的UIQ则用Qikon完成类似的工作。

Qikon和Avkon是特殊UI应用框架层的名字。它们都基于共通的Symbian操作系统UI框架Uikon得以实现。Qikon和Avkon重新实现了定义于Uikon中的框架类(它们必须被应用程序作者进一步覆写)。

Uikon提供了三种基本的框架基类:

l         应用程序类:CEikApplication

l         文档类:CEikDocument

l         应用UI类:CEikAppUi

所有的S60和UIQ应用程序至少需要实现这三种框架类。被实现的框架类继承于上述的UI基类,但却是通过上述基类的特殊UI实现间接继承的。这些特殊UI实现是由S60或UIQ完成的。它们与Uikon类的名字基本相同,只不过Uikon类中的前缀“CEik”分别被S60的“CAkn”和UIQ的“CQik”所替代,如下表所示:

  应用程序类
 文档类
 应用UI类
 
Symbian OS(Uikon)
 CEikApplication
 CEikDocument
 CEikAppUi
 
S60(Avkon)
 CAknApplication
 CAknDocument
 CAknAppUi/CAknViewAppUi
 
UIQ(Qikon)
 CQikApplication
 CQikDocument
 CQikAppUi
 ===========================================================================
uikon avkon eikon技术 2009-07-20 15:50:53 阅读131 评论0 字号:大中小
简单的说,不同的kon代表不同的接口类型。例如:

EIKON: original EPOC32 UI (User Interface)

UIKON: "generic" Symbian OS UI

AIKON: S80 1.0 (Nokia 9210) UI

AVKON: S60 UI

CKON: S80 2.0 (9300/9500) & 7710 UI

Qikon UIQ UI。

关于它们的详细介绍,请参看下面的文章,

The Common Framework

通用框架

Qikon and Avkon are the names of the UI-specific application framework

layers implemented on top of the common Symbian OS UI framework,
which is called Uikon. Qikon and Avkon implement framework classes
defined in Uikon which must be overridden further by application writers.
They also define many UI-specific controls, like dialogs, list boxes and
editors that can be reused in applications.
Uikon provides the base classes for the three fundamental UI classes:
the application (CEikApplication), the document (CEikDocument)
and the application UI (CEikAppUi). All Series 60 and UIQ applications
minimally need to define their own classes that derive from these.
However, they must not derive directly from the Uikon base classes, but
from the UI-specific implementations of them.
These implementations have the same name as the Uikon classes, but
in UIQ the CEik prefix is replaced with CQik, and Series 60 uses CAkn:

                                          Application                         Document                            App UI
Symbian OS (Uikon)    CEikApplication               CEikDocument                    CEikAppUi
Series 60 (Avkon)         CAknApplication              CAknDocument                   CAknAppUi/CAknViewAppUi
UIQ (Qikon)                    CQikApplication               CQikDocument                   CQikAppUi

The convention of using a Qik or Akn prefix is used throughout UIQ
and Series 60 to identify UI-specific classes, headers and libraries. In
general, a type, header or library without such a prefix is part of Symbian
OS, and is present in both UIs. There are some exceptions to this, notably
avkon, which appears in a few filenames like avkon.lib which is the
main Series 60 UI library, and avkon.hrh which holds the Series 60
resource constants.With the exception of the app UI, there are very few differences
between the Uikon, Qikon and Avkon implementations of these three
classes.

 

qikon和avkon是通过UI细节的名字来区别的应用程序框架,他们是实现在Symbian OS 的UI框架之上的,这个框架被叫做Uikon。Qikon和Avkon实现了定义在Uikon中的框架类,这些框架类必须被未来的应用程序作者override。他们(Avkon和Qikon)也定义了很多UI-specific控件(controls),像是对话框,列表框和能在应用程序中重用的编辑器。
Uikon提供了三个基础UI类的基类:应用程序(CEikApplication),文档(CEikDocument)和应用程序界面(CEikQppUi)。所有的S60和UIQ应用程序至少需要定义三个自己的类,这些类要从上述三个类中继承。但是,这些应用程序不能直接从Uikon的基类中继承,而是从它们的UI-specific的实现。
这些实现有和Uikon类一样的名字,只是在UIQ中前缀CEik换成了CQik,在S60中使用CAkn:
                                          Application                         Document                            App UI
Symbian OS (Uikon)    CEikApplication               CEikDocument                    CEikAppUi
Series 60 (Avkon)         CAknApplication              CAknDocument                   CAknAppUi/CAknViewAppUi
UIQ (Qikon)                    CQikApplication               CQikDocument                   CQikAppUi

 

前缀区别的方法被用在了Ui类,头文件和库中。总的来说,没有这些前缀的头文件,类型,库可以用在所有的UI中。当然也有一些列外,特别是avkon,比如出现在一些文件名字中像是avkon.lib,该文件是S60 UI的主要库,avkon.hrh保存了S60常量资源。由于应用程序的异常(??),在Uikon,Qikon和Avkon三类类中只有一些不同。

原创粉丝点击