可视 Mobile 设计器定制组件:创建移动设备文件浏览器
可视 Mobile 设计器 (VMD) 是 NetBeans Mobility 中的图形界面,您可以在该界面中使用拖放式组件设计移动应用程序。通过使用 VMD,您可以使用 IDE 提供的组件或您自己设计的组件定义应用程序流和设计 GUI。VMD 包含很多标准用户界面 (UI) 组件,您可以使用这些组件创建应用程序,如列表、警报、窗体和图像。它还包含一些定制组件,用于简化创建较复杂组件的过程,例如,等待屏幕、闪屏和表项等。
文件浏览器是一个定制组件,它提供了使用设备文件系统所需的用户界面。它提供了一些基本功能以浏览设备存储内存的内容。该组件使用 FileConnection API,它是适用于 Java ME 平台的 PDA 可选包的 JSR-75 规范的一部分。JSR-75 不是 MIDP 2.0 规范的一部分,这就是为什么只能在支持 JSR-75 的设备上使用该定制组件的原因。
本教程介绍如何在支持 JSR-75 的设备的移动应用程序中使用文件浏览器组件。您将了解这些组件的基本功能,如何浏览设备内存存储的内容以及如何显示所选文本文件的内容。除了文件浏览器定制组件以外,我们还使用两个其他 MIDP 组件:闪屏和文本框。
注意:如果使用的是 NetBeans IDE 6.8,请参阅在 NetBeans IDE 6.8 中创建移动设备文件浏览器教程。
目录
要学习本教程,您需要具备以下软件和资源。
安装并运行样例应用程序
开始之前,您可能希望查看本教程的最终结果。
请执行下列步骤以安装 FileBrowserExample 应用程序:
- 下载 filebrowserexample.zip。
- 解压缩该文件。
- 在 IDE 中,选择“文件”>“打开项目”,然后浏览到包含 FileBrowserExample 项目的解压缩文件的文件夹。
- 单击“打开项目”。
“项目”窗口应如下所示:
- 在“项目”窗口中,右键单击项目节点,然后选择“运行项目”(或按 F6 键)。当应用程序运行时,将会打开一个仿真器窗口,其中显示了在缺省设备仿真器中运行的应用程序。
- 在仿真器窗口中,单击 "Launch" 下面的按钮。
仿真器将显示闪屏组件,然后显示文件浏览器,如下所示:
- 将光标上移或下移以在可用的文件和文件夹之间导航。
- 单击 "Select" 下面的按钮以打开文件夹或文件。
- 单击 "Exit" 下面的按钮以关闭应用程序。
返回页首
使用文件浏览器定制组件创建应用程序
现在,您已看到运行中的文件浏览器组件,接下来让我们从头开始创建此应用程序。要创建此应用程序,请执行以下操作:
- 创建 FileBrowserExample 项目
- 在 FileBrowserExample 项目中添加包和 Visual MIDlet
- 在 FileBrowserExample 中添加组件
- 在文本框和文件浏览器组件中添加命令
- 连接组件以创建应用程序流
- 在源代码中插入 loadTextFile 方法
- 运行项目
创建 FileBrowserExample 项目
- 选择“文件”>“新建项目 (Ctrl-Shift-N)”。在“类别”下选择 "JavaME"。在“项目”下,选择“Mobile 应用程序”,然后单击“下一步”。
- 在“项目名称”字段中输入
FileBrowserExample。将“项目位置”更改为系统中的某个目录。从现在开始,我们将此目录称为 $PROJECTHOME。
- 取消选中“创建 Hello MIDlet”复选框。单击“下一步”。
- 将 "Sun Java Wireless Toolkit " 保留为选定的仿真器平台。单击“下一步”。
- 单击“完成”。
注意:此项目文件夹包含所有源代码和项目 meta 数据,例如,项目的 Ant 脚本。应用程序本身显示在可视 Mobile 设计器的“流设计”窗口中。
在 FileBrowserExample 项目中添加包和 Visual MIDlet
- 在“项目”窗口中选择
FileBrowserExample 项目,然后选择“文件”>“新建文件 (Ctrl-N)”。在“类别”下,选择“Java 类”。在“文件类型”下,选择“Java 包”。单击“下一步”。
- 在“包名”字段中输入
filebrowserexample。单击“完成”。
- 在“项目”窗口中选择
filebrowserexample 包,然后选择“文件”>“新建文件 (Ctrl-N)”。在“类别”下,选择 "MIDP"。在“文件类型”下,选择 "Visual MIDlet"。单击“下一步”。
- 在“MIDlet 名称”和“MIDP 类名”字段中输入
FileBrowserExample。单击“完成”。
在 FileBrowserExample 中添加命令
- 将 Visual MIDlet 切换到流设计器窗口。将以下组件从组件面板拖放至流设计器中:
- 单击 "splashScreen",然后在“属性”窗口中将“文本”属性值从 null 更改为 File Browser Example。
在 FileBrowserExample 中添加命令
- 打开流设计器窗口。
- 从组件面板的“命令”类别中选择“退出命令”。将其拖放至流设计器窗口中(fileBrowser 组件)。
- 从组件面板的“命令”类别中选择“后退命令”,然后将其拖放至 textBox 组件中。
连接组件以创建应用程序流
在“流”设计窗口中,单击“移动设备”上的“起点”并将其拖至 spalshScreen 组件上。采用相同的方法,按照下图所示连接各个组件。
在源代码中插入操作前代码
- 切换至“源”窗口。
-
将以下代码插入到源代码的末尾。以下方法负责读取所选的文件:
/**
* Read file
*/
private void readFile() {
try {
FileConnection textFile = fileBrowser.getSelectedFile();
getTextBox().setString("");
InputStream fis = textFile.openInputStream();
byte[] b = new byte[1024];
int length = fis.read(b, 0, 1024);
fis.close();
if (length > 0) {
textBox.setString(new String(b, 0, length));
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
在源代码中查找 commandAction 方法:
将 readFile(); 插入到 FileBrowser.SELECT_FILE_COMMAND 的操作前代码部分中(紧靠 if (command == FileBrowser.SELECT_FILE_COMMAND) 后面,其中显示 //write pre-action code here):
运行项目
按 <F6> 键以运行主项目,或者选择“运行”>“运行主项目”。
返回页首
文件浏览器组件的 Javadoc
NetBeans IDE 提供了文件浏览器组件以及可以在 VMD 中使用的其他组件的 API Javadoc。要阅读文件浏览器组件的 Javadoc,请完成以下步骤:
- 将光标放在源代码中的 FileBrowser 组件上,然后按 Ctr-Shift-空格键(或选择“源”>“显示文档”)。
将在弹出式窗口中显示该元素的 Javadoc。
- 在弹出式窗口中单击“在外部 Web 浏览器中显示文档”图标 (
),以查看有关浏览器中的 FileBrowser 组件的详细信息。
返回页首
另请参见
返回页首