在BUIW中采用了MVC的设计模式(图10-3),MVC(Model
/View/Controller)是程序开发中经常使用的一种模式,它很好地实现了数据层与表示层的分离。MVC把应用程序分为三种对象类型:模型,维护数据并提供数据访问方法;视图,绘制模型的部分数据或所有数据的可视图;控制器处理事件。视图事先会在模型中登记,当模型数据发生改变时,马上通知已向此模型登记的每个视图。视图从模型取得最新的数据并刷新自己。
Widgets在互联网上是一种时髦的技术,而在这里,Widgets是一个插件式可扩展的UI组件框架,是窗口化的应用框架,并引入了容器的概念,实际上,容器是一类特殊的widget。
Model 提供了驱动widget内容的实际数据,管理Listener的注册行为,而并不关注数据的可视化表达。有点像STL,不同的model支持不同的数据类型例如链表,向量组等,也支持特定控件或接口的数据类型。当数据发生变化时,Model会向关注该数据的发起者发送通知。IModel是一个基础接口,其他的Model接口都派生于IModel接口, 有IValueModel,IArrayModel,IVectorModel,IInterfaceModel,IMenuModel和ITextModel等。
Widget是窗口上的小的控件,如文本框,图片框等,来完成一个Model中的数据表达,而不需要知道显示的位置,只需要知道内容和显示的区域。Widget 监听Model中数据的变化,按照开发者的需要来显示数据,可以不做显示处理,或者部分显示,甚至做到后台改变。Widget同时管理焦点和按键事件,IWidget是一个基础接口,其他的Widget接口都派生于IWidget接口,有ICheckWidget,I
RadioWidget,IButtonWidget,IProgressWidget,ITextWidget,ISliderWidget和IWaitCursorWidget 等。
Container来管理一组widgets的位置和布局,控制Widgets在屏幕上显示的次序,通常一个widget
自身就可以成为一个Container。根据布局的原则,Container像堆栈一样管理Widget。Widget在其中由底向上存放,所以Widget被叠加的时候,在堆栈底层的Widget可能被隐蔽,屏幕中只显示堆栈顶层的Widget。也就是说,Container先画最底层的Widget,然后逐层向上实现屏幕显示。IContainer是一个基础接口,其他的Widget接口都派生于IWidget接口,有IPropContainert,IConstraintContainer,IXYContainer,ICardContainer和IDecorator等。一个decorator是一个特殊的container用来管理和修饰指定的 widget,通IDecorator可以实现BorderWidget,BlendWidget,ImageWidget,TabWidget,ScrollbarWidget,ScrollIndicatorWidget,ViewportWidget,TitleWidget,ListWidget,GridWidget和PickWidget等等。
Form是针对页面显示的,有两类:RootForm和一般的Form。RootForm 预先实现了一般通用的屏幕布局,负责管理Form堆栈,为Forms定义了可视化元素,包括标题、背景和软健包括标题,软键按钮和背景,设定标题的区域,软键按钮的显示区域,一组form的客户区域,区别弹出对话框和手机的全屏显示,管理未处理的按键事件并分发给当前的form,而且,RootForm中的元素是可以被替换或删除。
Form同样包含标题,软键按钮和背景等显示元素,当显示元素的内容发生变化是发出相应的通知,获取当前Widget没有处理的事件。Form负责应用的逻辑,构建和放置Widgets,设置Model中的数据,处理应用的执行流程。IForm是一个基础接口,其他的Form接口都派生于IWidget接口,主要有ListForm,StaticForm和PopupForm。
分享到:
相关推荐
此书简洁而深入的介绍了brew的基本原理,非常适合已经入门但是还未从整体上掌握的brew开发者。
深入brew开发,很好的参考进阶资料。对于学习C语言也很有一定的帮助。
高通BREW开发图形包 BUIW1.3 UI类库安装包。
基于brew buiw的电子书实现,可在模拟器上运行
联通博路编写的开发者进阶教程,pdf版本,转载。 共18部分: 第一部分目录如下: Brew概述 Brew技术演进 Brew3.1.5 sp01 ...以后各部分为具体接口介绍,对刚接触Brew系统的开发人员应该有一定帮助。
BUIW使用手册,对BUIW内容有详细的说明
为了优化全网增值业务合作管理,促进业务健康发展,在《中国电信移动增值业务合作管理 ... 现发布《中国电信全网增值业务合作管理办法(V2.0版)》,包括总册、短信业务分册、彩信业务分册、WAP业务分册、BREW业务...
BREW开发培训系列——高级——BREW 语音呼叫业务
BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)
BREW开发培训系列——BREW平台与演进——BREW概述、发展现状及趋势
目录:(BREW 初级开发者 教程):第1章 BREW技术特点与发展趋势第2章 BREW SDK简介 第3章 BREW开发基础第4章 BREW手机简介 第5章 ISHELL第6章 IDISPLAY使用简介 第7章 ISTATIC第8章 IMENUCTL 第9章 IImage第10章 ...
———————————————————————————————————————————— 替换bottles 镜像源(可选) 该镜像是 Homebrew 二进制预编译包的镜像。 临时替换 export HOMEBREW_BOTTLE_DOMAIN=...
基于brew平台下短信增值业务的设计与实现,张冬梅,,在3G移动通信网络中,基于短消息业务平台提供的短消息增值业务将有着巨大的市场需求。本文通过对BREW(Binary Run Environment Wireless,无线�
BREW平台及业务介绍BREW平台及业务介绍
BREW编程经验——Dialog机制的使用方式.doc
BREW开发培训系列——高级——BREW 常用接口介绍
BREW开发培训系列——高级——BREW 面向对象特点及其应用.pdf
Qualcomm BUIT Component Model
深入研究BREW手机游戏开发BREW开发-海信(王宏兵),不仅只是介绍了brew的游戏开发。