У меня проблемы с настройкой FieldChangeListener новой кнопки, которую я создаю после выполнения действия.У меня есть список ButtonFields, и когда я создаю новый VoiceNote, добавляется новый ButtonField, связанный с этим VoiceNote.
Я создаю новую голосовую заметку для редактирования на другом экране, и когда этот экран закрывается, заметка добавляется в мою базу данных, а новая кнопка добавляется в список.Кнопка добавлена правильно, но когда я нажимаю на нее, она ничего не делает.
Код MenuItem, который вызывает это, выглядит следующим образом:
private final class NewNote extends MenuItem
{
Vector _voiceNotes;
ListStyleButtonField _nuevoBoton;
public NewNote(Vector voiceNotes)
{
super("New Voice Note",0,0);
_voiceNotes = voiceNotes;
}
public void run() {
VoiceNote newNote = new VoiceNote("", "", null);
UiApplication.getUiApplication().pushModalScreen(new RecordScreen(_managerBD, newNote));
if(newNote.get_id() != -1)
{
_voiceNotes.addElement(newNote);
_nuevoBoton = new ListStyleButtonField(newNote.get_nombre(), 0);
add(_nuevoBoton);
newNote.set_noteIndex(_nuevoBoton.getIndex());
UiApplication.getUiApplication().invokeAndWait(new Runnable() {
public void run() {
_nuevoBoton.setChangeListener(UiApplication.getUiApplication().getActiveScreen().getChangeListener());
}
});
UiApplication.getUiApplication().relayout();
}
}
}