J2ME (Java ME) 中 ChoiceGroup 是表單多選/單選核心元件。本文提供完整 MIDlet 範例,演示建立、監聽選項變更、遍歷獲取選中值全流程。
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class ChoiceGroupDemo extends MIDlet implements ItemStateListener {
private Display display;
private Form form;
private ChoiceGroup cg;
public ChoiceGroupDemo() {
display = Display.getDisplay(this);
form = new Form("語言偏好");
// MULTIPLE=多選, EXCLUSIVE=單選, POPUP=下拉式
cg = new ChoiceGroup("選擇喜愛語言:", Choice.MULTIPLE);
cg.append("C", null);
cg.append("C++", null);
cg.append("Java", null);
form.append(cg);
form.setItemStateListener(this);
}
protected void startApp() { display.setCurrent(form); }
protected void pauseApp() {}
protected void destroyApp(boolean unconditional) {}
public void itemStateChanged(Item item) {
if (item == cg) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < cg.size(); i++) {
if (cg.isSelected(i)) sb.append(cg.getString(i)).append(" ");
}
System.out.println("您選擇了:" + sb.toString().trim());
}
}
}
| 方法 | 說明 |
|---|---|
append(String, Image) | 新增選項 (圖示可為 null) |
size() | 選項總數 |
isSelected(index) | 指定索引是否被選中 |
getString(index) | 取得選項文字 |
setSelectedFlags(boolean[]) | 批次設定選中狀態 |
setSelectedIndex(index, true) | 單項設定 |