专注于Blackberry

BlackBerry 应用程序开发者指南 第一卷:基础–第2章 编写BlackBerry Java应用程序

2 第2章 编写BlackBerry Java应用程序 应用程序管理 编写一个例程 重用一般代码 使用BlackBerry IDE 使用命令行 使用蓝牙开发环境 使用Eclipse开发环境 编程指南 应用程序管理 当BlackBerry设备启动时,VM加载应用程序管理器,它管理在BlackBerry设备上所有运行的程序。对于其他Java程序,应用程序管理器的功能类似操作系统事件的中心调度员一样。 提供用户界面的应用程序扩展了net.rim.device.api.ui.UiApplication类。这个类为应用程序提供方法来注册事件监听者,管理线程以及UI组件。 没有提供用户界面的应用程序扩展了net.rim.device.api.system.Application类。 BlackBerry应用程序开始于main()函数。当一个程序开始时,它的main()线程调用enterEventDispatcher()来开始处理事件。这个线程运行所有绘图以及事件处理的代码,以及登等待应用程序队列里地事件。 当应用程序管理器接收到一个事件时,它将这个事件拷贝到合适的队列里,这个队列可以允许应用程序管理器指挥消息到特定的程序中。例如,前台的应用程序仅接收用户输入的消息。 编写一个例程 扩展UiApplication基类 每个提供用户接口的应用程序扩展了UiApplication基类,UiApplication类为应用程序定义了方法来建立一个事件线程,并且显示和维护Screen对象。 定义 main() 在main()中,为应用程序创建一个新的对象。调用enterEventDispatcher()使应用程序进入事件线程并且开始处理消息。 public static void main(String[] args) {   HelloWorld theApp = new HelloWorld();   theApp.enterEventDispatcher(); } 定义一个构造子 为你的应用程序定义缺省的构造子。缺省的构造子调用UiApplication.pushScreen()以显示当应用程序启动时出现的屏幕。在本例中,屏幕使一个新的HelloWorldScreen实例,它在下节的代码中定义: public HelloWorld() {   pushScreen(new HelloWorldScreen()); } 定义main屏幕 为了定义应用程序UI的主屏幕,扩展MainScreen类。MainScreen类是Screen的子类,它实现了TrackwheelListener和KeyboardListener接口,这些接口接收和响应用户交互。如果你扩展Screen类或者其子类中的一个,你并不是必须实现TrackwheelListener 和KeyboardListener接口。 你的类至少应该重写2个MainScreen的方法:缺省的构造子和onClose(). 在这个例子中,构造子调用了MainScreen的构造子。缺省地,MainScreen提供下列特性: 由一个Close菜单项的缺省菜单。 [...]

继续阅读本文 →

Taigoo发表于 April 22, 2008 5:32 pm | 留言(1) |文档