有人可以給我如何三行添加到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