0
我是黑莓手機新手,在一個地方被卡住了。我有一個自定義的下拉菜單,我希望如果我從菜單中選擇第二個選項,應該添加一個字段,如果我從菜單中選擇第一個選項,字段應該刪除。這是我的自定義下拉菜單。如何在黑莓運行時添加一個字段?
public FWCustomChoiceField(final Object choice[]) {
edit_field = GlobalUtils.getImage(Display.getWidth() + "x"+ Display.getHeight() + "bb_dropdown1.png");
this.choice = new Object[choice.length];
this.choice = choice;
text = choice[0].toString();
choiceField = new ListField() {
protected boolean navigationClick(int status, int time) {
//buttonIndexFunctionality(getSelectedIndex());
Field focus = UiApplication.getUiApplication().getActiveScreen().getLeafFieldWithFocus();
if (focus instanceof ListField) {
ChoicePopupScreen popup = new ChoicePopupScreen(20, Display.getHeight()/ 2 - (choice.length * 20), choice);
popup.setChoice(choice);
UiApplication.getUiApplication().pushScreen(popup);
}
return super.navigationClick(status, time);
}
};
choiceField.setSize(1);
choiceField.setCallback(new TestListCallback());
add(choiceField);
invalidate();
}
public int getListFieldIndex()
{
return choiceField.getSelectedIndex();
}
public void setSelIndex(int index) {
this.index = index;
this.text = choice[index].toString();
choiceField.invalidate();
}
public String getValue() {
String value = choice[index1].toString();
return value;
}
public int getSelectedIndex() {
return index;
}
我搜索並發現我需要在運行時重建屏幕,但無法弄清楚如何去做。
添加現場經理(hfm/vfm)到屏幕上。如果您單擊第二個菜單,請將相應的字段添加到字段管理器並使其無效。當您單擊第一個選項時,請從字段管理器中刪除該字段。 – Signare 2013-02-12 05:26:20
我正在做同樣的事情,但無法在運行時做到這一點。當我點擊提交按鈕比字段添加。 – MRX 2013-02-12 05:29:39
當您點擊下拉菜單時,您想更改字段?是在運行時間? – Signare 2013-02-12 05:32:23