BlackBerry 应用程序开发者指南 第二卷:高级–第4章 增加设备选项
4
第4章 增加设备选项
选项API
增加选项
选项API
net.rim.blackberry.api.options 中的BlackBerry选项API允许你将一个选项条目增加到设备选项中.
使用此功能可以增加一个系统级的选项到多个程序可以使用的BlackBerry设备中.
当你在主屏幕上点击Options图标时,将会出现一列选项,例如自动文本(AutoText),日期/时间(Date/Time),和防火墙.用户可以选择这些项查看某个选项的屏幕.此屏幕显示一个或多个字段.一般来说,用户可以更改每个字段的值.
增加选项
注册增加选项
OptionsProvider接口的实现允许应用程序增加选项.它包含了getTitle(),save()以及populateMainScreen()的实现.
BlackBerry设备启动时增加选项.
创建一个类库工程,此工程有一个libMain()方法完成需要的注册.
创建一个类库工程
1. 在BlackBerry JDE中,创建一个工程.
2. 右击工程,然后单击Properties.
3. 在Properties窗口,单击Application标签.
4. 在Project type下拉列表中,单击Library.
5. 在启动选项里选择Auto-run.
6. 单击OK.
作为一个选项提供者(Options Provider)注册
getInstance()的实现可以得到一个类的静态实例.一次只存在一个实例.调用libMain()的registerOptionsProvider()方法.将一个类的静态实例作为参数.
private static DemoOptionsProvider _instance;
//…
public static DemoOptionsProvider getInstance() {
if(_instance == null) {
_instance = new DemoOptionsProvider("Options Demo");
}
return _instance;
}
//…
public static void libMain(String[] args) {
OptionsManager.registerOptionsProvider(getInstance());
}
保存选项
为了保存当前选择的选项值,请实现Persistable接口.在你的实现中,定义方法设置所选的选项值,以及提交和获取持久存储里的选项值.
注:如果你作为一个内部类实现Persistable接口,将它的get(),set(),以及commit()方法设置为public,这样其他的应用程序就可以访问选项数据.
为获取更多关于存储持久数据的信息,参看92页”管理持久数据”
提供选项数据的访问
在你的类库里,增加一个公共方法允许其他的应用程序访问选项数据.
代码实例
本实例描述了选项的使用.
例: DemoOptionsProvider.java
/**
* DemoOptionsProvider.java
* Copyright 2002-2005 Research In Motion Limited.
*/
package com.rim.samples.docs.demooptionsprovider;
import net.rim.blackberry.api.options.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.i18n.*;
import net.rim.device.api.system.*;
import net.rim.device.api.util.*;
// A simple library class [...]
Confach发表于 April 28, 2008 12:20 pm | 留言 |文档
最新留言
- 高超:还有我按照http://www.52blackberry.com/thread-291671-1-1.html这个网站的方法实验过,还是不可以,不知道哪里做的不对
- 高超:说实话我没有看懂说的是什么,但是我很想像楼主那样使用SB的应用,我想楼主详细的告诉我应该怎么操作才能使用。谢谢 另:我没有使用移动的SB,那又点贵,不知道楼主的方法是不是需要移动推入,我使用的是blackberry的8520,支持WIFI 等待回复谢谢
- nio:ESS和MDS设置完毕之后,还是无法接收邮件,请较如下: MDS设置中的 Email.userId是写邮箱登陆用户名? Email.address需要修改么? Email.personal需要修改么? ESS设置中的 Email.personal跟MDS中的Email.personal有关系吗? Email.address跟MDS中的Email.address有关系吗? 以上两项应该设置成什么? ps:我用的是126的邮箱,用本地的outlook没有问题~
- 涂鸦:姜还是老的辣。
- Kirsten30MG:A lot of professors demand to examine the writing technique, hence, people have to choose dissertation service to buy free dissertation. In such way people show academic level. And as well you should get thesis.
