菜单项:我们通过在Screen中重写makeMenu()方法来添加菜单。
protected void makeMenu(Menu menu,int instance)
在这个方法里,会用到menu.add(MenuItem)来添加一个菜单项。
菜单项这个类就是 MenuItem
MenuItem newItem = new MenuItem("Alert", 100, 10){
public void run(){
Dialog.inform("Alert Message");
}
};
MenuItem构造子接受下面的3个参数:
text 菜单项的名称
ordinal 菜单项的顺序;一个越大的值表明了这个菜单项越靠近菜单的底部。
priority 接收缺省焦点的菜单项优先级(值越小表示高优先级)
run()定义了当用户点击菜单项发生的操作的实现。
对话框: Dialog 继承 PopupScreen 并实现 FieldChangeListener, HolsterListener
1、Dialog由标题区和用户区组成。用户区包含图标和标题信息;用户区主要由按键组成。
2、Dialog的排版由DialogManager管理,客户区实际按Vertical居中排列按键,当然也可添加其他Field
3、Dialog是局部的类,它默认从属于类的某个方法,当Style设置了Dialog. GLOBAL_STATUS后,它就成为全局类,可以在类的任何地方显示执行,包括在构造方法内。
4、Dialog的Styel除了Screen和Manager外,还有LIST和GLOBAL_STATUS,LIST表示用户区的按键显示形式不是原来的Button形式,而是列表的形式。GLOBAL_STATUS见前。
5、Dialog有预制、按标准定制和非标准定制三种。
按标准定制
系统设置好几个按键的组合形式,包括有
D_OK, 显示一个字符串,并且提示用户点击OK。
D_SAVE, 实现一个字符串,并且提示用户点击Save,Discard,或者Cancel;按Escape取消
D_DELETE, 显示一个字符串,并且提示用户点击Delete或者Cancel;按Escape撤销
D_YES_NO. 显示一个字符串,并且提示用户点击Yes或No
这些组合根据按键按下对应返回CANCEL、OK、SAVE、DISCARD、DELETE、YES和NO等值。标准定制时每次type只能选择一个组合。
Ask除Bitmap已确定为“?”外,其他同Dialog构造函数。
defaultChoice表示一显示,直接聚焦到第几个按键。
dontAskAgain – 增加一个’Don’t ask again’ 的检查框。
Style=0和1(List)两种,其他值未发现有效,即Screen和Manager的style不能影响dialog的样式。
public static int ask(int type)
public static int ask(int type,String message)
public static int ask(int type, String message, int defaultChoice)
public Dialog(int type, String message, int defaultChoice, Bitmap bitmap, long style)
public Dialog(int type, String message, int defaultChoice, Bitmap bitmap, long style,boolean dontAskAgain)
非标准定制
choices表示要添加到用户区作按键的object,Dialog只是提取他们的string(Object.String)作按键的Label而已,因此对Object添加string就可以了。
values是对应object的返回值,如果没有,返回值用序号(index)代替。
public static int ask(String message, Object[] choices, int defaultChoice)
public static int ask(String message, Object[] choices, int[] values,
int defaultChoice)
public Dialog(String message, Object[] choices,int[] values, int defaultChoice, Bitmap bitmap)
public Dialog(String message, Object[] choices, int[] values, int defaultChoice, Bitmap bitmap, long style)
一般方法
public int doModal()//执行Dialog,并返回按下的键值。
public void show()//显示Dialog,无返回值。
public void show(int priority)
protected static String[] getResourceChoices(int type)
protected static String getResourceMessage(int type)
protected static int[] getResourceValues(int type)
protected static int getResourceDefaultValue(int type)
protected static int[] getResourceSoftkeyMap(int type)
public void setDialogClosedListener(DialogClosedListener listener)
public RichTextField getLabel()
public int getPreferredWidth()
public int getSelectedValue()
public boolean getDontAskAgainValue()
public final void setDefault(int defaultChoice)
public final void setEscapeEnabled(boolean escapeEnabled)
Dialog 选择项处理方式,如下:
int response = Dialog.ask(Dialog.D_SAVE);
if (Dialog.SAVE == response || Dialog.CANCEL == response)
return
false;
if ( Dialog.DISCARD == response )
_item.deleteItem(_itemIndex);
几个声明的范例:
Dialog myDialog = new Dialog(Dialog.D_SAVE, "My Dialog!", 1,
Bitmap.getPredefinedBitmap(Bitmap.QUESTION), 1);
Dialog myDialog2 = new Dialog("Other Dialog", choices, values,
1, Bitmap.getPredefinedBitmap(Bitmap.QUESTION), 0);
Dialog.alert("This ia a Alert Dialog!");
Dialog.ask(Dialog.D_SAVE);
Dialog.inform("This is a inform Dialog!");
- 大小: 11.4 KB
- 大小: 17 KB
- 大小: 12 KB
分享到:
相关推荐
本篇"黑莓学习笔记之一----进度条"着重讨论了如何在黑莓(BlackBerry)平台上实现和使用进度条功能。Blackberry是一个历史悠久的移动操作系统,尽管现在已被更现代的系统取代,但其开发经验对于理解移动应用的UI设计...
本文将以“黑莓学习笔记之二--布局管理器Manager”为主题,深入探讨黑莓平台上的布局管理器及其使用技巧。 黑莓操作系统(BlackBerry OS)提供了一套强大的布局管理工具,称为Manager类,用于组织和控制应用程序的...
本教程将为大家介绍 BlackBerry 手机软件安装的多种方法,包括传统方式、WinLoader 安装和 OTA 在线方式。通过这些方法,新手可以轻松地安装软件到 BlackBerry 手机上。 一、传统方式:桌面管理器 桌面管理器是 ...
其次,WinLoader是一款强大的第三方管理工具,它无需桌面管理器,仅需正确安装BlackBerry的USB驱动,就能在任何电脑上进行软件的安装和管理。通过WinLoader,可以选择“安装COD”来安装软件,或者设置文件关联,实现...
**BlackBerry API**是针对BlackBerry设备设计的一套应用程序接口,它包含了多种用于开发BlackBerry应用的核心组件和技术。本指南主要介绍了BlackBerry API的基本使用方法及其关键特性,旨在帮助开发者快速上手。 - ...
【标签】中的“黑莓手机8830”代表了这款经典的黑莓智能手机,它运行BlackBerry OS操作系统,拥有物理键盘和相对较小的显示屏,是早期智能手机的代表之一。“浏览器”表明我们关注的是该设备上的网络浏览功能,而...
### 黑莓UI界面开发指导知识点详解 #### 一、设计原则 在为黑莓设备设计用户界面时,应遵循以下设计原则: 1. **易用性**:确保应用程序易于理解和使用,即使对于初次使用的用户也能够快速上手。 2. **一致性**:...
用户在安装和使用时,需要确保设备兼容这个版本,并理解早期版本可能存在的不完善之处。 基于以上信息,我们可以推测Btalk的主要知识点包括: 1. **黑莓平台支持**:Btalk是为黑莓手机设计的,这意味着它可以充分...
8. **使用标准API**:黑莓提供MIDP API和自有的UI API,用于创建与原生应用程序一致的布局和属性。标准组件包括屏幕输出布局、栏位元素、布局管理器等,以及对用户和系统事件的响应机制。 9. **了解设备参数**:...
2. **BlackBerry编程语言**:BlackBerry支持Java ME(Micro Edition)和 BlackBerry Native SDK,开发者可能需要学习这些语言的基本语法和特性。 3. **RIM API理解**:RIM API是BlackBerry平台提供的接口,允许...
它不仅涵盖了BlackBerry平台的基本概念和发展历程,还详细介绍了如何在该平台上构建高级应用所需的各项技术。 #### BlackBerry Java 开发环境 BlackBerry的应用程序开发主要基于Java技术栈。本章节首先介绍了...
在黑莓(BlackBerry)平台开发应用程序时,开发者通常会遇到jad、cod和alx文件。这些文件格式是黑莓操作系统特有的,对于理解和部署黑莓应用至关重要。下面将详细解释这三个文件类型及其转换过程。 **jad文件** jad...
PlayBook中文说明书,BlackBerry_PlayBook_Tablet-T1526983-1526983-0213114900-011-2.0-ZH.pdf
在本文中,我们将深入探讨如何进行...通过不断实践和学习,开发者可以熟练掌握这些技能,从而创建出高质量的BlackBerry应用程序。记住,黑莓开发者社区中的资源,如论坛帖子和博客,都是学习过程中非常宝贵的参考资料。
在移动应用开发领域,BlackBerry曾是重要的平台之一,为开发者提供了独特的机遇。这份“BlackBerry应用程序开发者指南”分为基础卷和高级卷,全面覆盖了从入门到精通的整个过程,对于想要在BlackBerry平台上构建应用...