EDIT:Я считаю, что нужна помощь в получении выбранного элемента в списке я просто управляемый
для того, чтобы показать новую форму, но у меня много проблем найти код, который работает
с источником 3.0.
Confused командных слушателей и новые формы J2ME
Я пытался сделать приложение, которое позволяет пользователю выбрать дату затем добавить
и удалять события на основе выбранной даты. До сих пор я создал первый экран
, который является вариантом выбора для пользователя.
Эти опции:
- Выбор даты
- Добавить События
- Удалить События
- Обзор событий
Вопросы, я имею я не могу получить мою голову вокруг того, как для отображения новых форм на основе
выбранного элемента в списке. Я нашел небольшой учебник, который позволил мне добавить команду
прослушиватель, который показывает выбранный элемент, но у меня возникли проблемы с выяснением того, как он получает элемент
, выбранный в списке, и как я могу создать новую форму на основе выбранного элемента ?
Вот мой код.
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.Form;
import javax.microedition.midlet.MIDlet;
public class mainMidlet extends MIDlet implements CommandListener {
private Display display;
private List list = new List("Please Select a Option", List.IMPLICIT);
private Command select = new Command("Select", Command.SCREEN, 1);
private Form form;
Alert alert;
public mainMidlet() {
display = Display.getDisplay(this);
list.append("Select Date", null);
list.append("Add Events", null);
list.append("Remove Events", null);
list.append("Browse Events", null);
list.addCommand(select);
list.setCommandListener(this);
}
public void startApp() {
display.setCurrent(list);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command command, Displayable displayable) {
if (command == List.SELECT_COMMAND) {
String selection = list.getString(list.getSelectedIndex());
alert = new Alert("Option Selected", selection, null, null);
alert.setTimeout(Alert.FOREVER);
alert.setType(AlertType.INFO);
display.setCurrent(alert);
} else if (command == select) {
destroyApp(false);
notifyDestroyed();
}
}
}
вы рассматривали вывешивать новый вопрос вместо редактирования этого один (который, кажется, ответить, не так ли)? В SO-ответчиках, как правило, не нравятся [«вопросы хамелеона»] (http://meta.stackexchange.com/questions/43478/exit-strategies-for-chameleon-questions «связанное обсуждение в MSO») – gnat