Обработчик нажатия кнопки Blackberry - PullRequest
0 голосов
/ 26 мая 2011

Я хочу запустить Java-код, когда пользователь нажимает на эту панель инструментов в моем приложении BlackBerry.У меня есть следующий код, который не работает.Пожалуйста, скажите мне, где я не прав.

butHome = new ToolbarButtonField(new StringProvider("Home"));
butHome.setChangeListener(new FieldChangeListener() {
    public void fieldChanged(Field field, int context) {
        System.out.println("Clicked...");
    }
});

Ответы [ 2 ]

1 голос
/ 26 мая 2011

Вы можете использовать:

ToolbarButtonField # invoke

Выполняет действие при нажатии на эту панель инструментовзадавать.Щелчок определяется как следующая последовательность событий касания: TouchEvent.DOWN, TouchEvent.CLICK, TouchEvent.UNCLICK и TouchEvent.UP.

Вам придется использовать это в сочетании с Структура команд .Если это нежелательно, переопределите ToolbarButtonField # touchEvent , чтобы событие TouchEvent.UNCLICK выполнило нужный код.

public boolean touchEvent(TouchEvent message) {
  if ( message.geEvent() == TouchEvent.UNCLICK ) {
         // do what I want.
  }
}
1 голос
/ 26 мая 2011

Попробуйте это:

butHome = new ToolbarButtonField(new StringProvider("Home")) {
    protected boolean navigationClick(int status, int time) {
        System.out.println("Clicked...");
        return true;
    }
});
...