有人可以给我如何三行添加到ListField以便列表显示像这样一个简单的例子?黑莓 - 添加项目到ListField
项目1
项目2
项目3
我只是想以表示用户可以选择的项目之一,该方案将取决于所选择的项目做一些事情的清单。
我搜索了所有在互联网上,但它似乎是不可能找到如何做一个简单的例子(我发现大多数的例子是不完整的)和黑莓的文档是可怕的。
谢谢!
有人可以给我如何三行添加到ListField以便列表显示像这样一个简单的例子?黑莓 - 添加项目到ListField
项目1
项目2
项目3
我只是想以表示用户可以选择的项目之一,该方案将取决于所选择的项目做一些事情的清单。
我搜索了所有在互联网上,但它似乎是不可能找到如何做一个简单的例子(我发现大多数的例子是不完整的)和黑莓的文档是可怕的。
谢谢!
你可能想看看使用ObjectListField。处理选择动作throught含有Screen对象一样,我已经这样做了以下使用菜单项,我真的不知道如何设置默认选择的倾听者,你可能需要检测键和拨轮事件。
你一些示例代码:(没有测试!)
MainScreen screen = new MainScreen();
screen.setTitle("my test");
final ObjectListField list = new ObjectLIstField();
String[] items = new String[] { "Item 1", "Item 2", "Item 3" };
list.set(items);
screen.addMenuItem(new MenuItem("Select", 100, 1) {
public void run() {
int selectedIndex = list.getSelectedIndex();
String item = (String)list.get(selectedIndex);
// Do someting with item
});
screen.add(list);
您可以通过覆盖
protected boolean navigationClick(int status,int time)
然后你只需要制定出做什么检测各列表项的点击以响应点击。我这样做的方式是使用匿名类,为每个列表项设置。
可以重写navigationClick方法是这样的:
ObjectListField list = new ObjectListField()
{
protected boolean navigationClick(int status, int time)
{
// Your implementation here.
}
};
private ListField fList = new ListField(){
protected boolean navigationClick(int status, int time) {
System.out.println("omt Click");
return true;
};
};
final class SimpleListScreen extends MainScreen
{
public SimpleListScreen()
{
super(Manager.NO_VERTICAL_SCROLL);
setTitle("Simple List Demo");
add(new LabelField("My list", LabelField.FIELD_HCENTER));
add(new SeparatorField());
Manager mainManager = getMainManager();
SimpleList listField = new SimpleList(mainManager);
listField.add("Item 1");
listField.add("Item 2");
listField.add("Item 3");
}
}
//add listener so that when an item is chosen,it will do something