我在设置执行操作后创建的新按钮的FieldChangeListener时遇到了一些麻烦。我有一个ButtonField列表,当我创建一个新的VoiceNote时,会添加一个链接到该VoiceNote的新ButtonField。
我在另一个屏幕上创建了一个新的语音注释,当该屏幕关闭时,注释将添加到我的数据库中,新的按钮将添加到列表中。按钮添加正确,但是当我点击它时,它什么也没做。
调用它的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();
}
}
}
答案 0 :(得分:0)
您正在将更改侦听器设置为与为活动屏幕设置的更改侦听器相同。您是否为活动屏幕设置了更改侦听器?