【经典】编写BlackBerry JAVA应用程序

blackberry_er 2009-10-26 02:47:50
加精
应用程序管理当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提供下列特性:

<!–[if !supportLists]–> <!–[endif]–>由一个Close菜单项的缺省菜单。
<!–[if !supportLists]–><!–[endif]–>当你点击Close或者按Escape时,缺省的是关闭动作。为了提供客户定制行为,例如显示一个对话框提示,当用户点击Close菜单项或者按Escape按钮,重写onClose().
<!–[if !supportLists]–>一个RichTextField 的实例,一个可以接收焦点的只读富文本域 为了得到更多关于增加UI组件到屏幕中的信息,参看40页的“提供屏幕导航”
<!–[if !supportLists]–>一个Select菜单项的上下文菜单• 为了得到更多信息,参看60页的“创建定制的上下文菜单“
代码实例接下来的例子创建了一个屏幕,它包含了一个富文本域。当富文本域接收到焦点时,菜单保安一个Close菜单项和一个Select上下文菜单项。

<!–[if !vml]–><!–[endif]–>
...全文
1182 75 打赏 收藏 转发到动态 举报
写回复
用AI写文章
75 条回复
切换为时间正序
请发表友善的回复…
发表回复
lixin1020 2010-11-12
  • 打赏
  • 举报
回复
国外的 企业级应用 多数黑莓多啊

iPhone个人用的多
shencongtianjiang 2010-10-20
  • 打赏
  • 举报
回复
好东西啊,受益匪浅,感谢楼主!!!!!!!!!!
zoutuo 2010-10-19
  • 打赏
  • 举报
回复
以后准备向J2ME方向发展~~
sstar520 2010-10-18
  • 打赏
  • 举报
回复
每天顶一顶
sstar520 2010-10-18
  • 打赏
  • 举报
回复
每天顶一顶
cwjArcInfo 2010-10-18
  • 打赏
  • 举报
回复
学习学习
julian8146 2010-10-18
  • 打赏
  • 举报
回复
学习了,很棒
bomeimei 2010-10-18
  • 打赏
  • 举报
回复
正在研究BlackBerry和Android,好东西。
naigenaige 2010-10-17
  • 打赏
  • 举报
回复
The applications of Java have huge influence to our world! Thanks!
zj7suk 2010-10-17
  • 打赏
  • 举报
回复
我分不够啊
michelle1111 2010-10-17
  • 打赏
  • 举报
回复
嗯 ,谢谢,受教了
xulei0313 2010-10-16
  • 打赏
  • 举报
回复
JAVA好学么
kaili193 2010-10-16
  • 打赏
  • 举报
回复
多研究多学习
syk1517 2010-10-16
  • 打赏
  • 举报
回复
这都是些最初级的嘛
longqingaa1 2010-10-16
  • 打赏
  • 举报
回复
怎么回事呢
雇兵者189 2010-10-16
  • 打赏
  • 举报
回复
感谢楼主的分享,程序有很多东西可学习的!!!
project11 2010-10-16
  • 打赏
  • 举报
回复
学习。。。
mpz129 2010-10-15
  • 打赏
  • 举报
回复
看来还得要学习啊
sujoscn 2010-10-15
  • 打赏
  • 举报
回复
非常感谢
社会栋梁 2010-10-15
  • 打赏
  • 举报
回复
看看 。。。。
加载更多回复(29)

1,146

社区成员

发帖
与我相关
我的任务
社区描述
探讨BlackBerry智能手机开发相关的技术、软件、产品等话题。
社区管理员
  • BlackBerry
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧