Подключите Blackberry menuitem к экранным кнопкам

#blackberry #button #screen #menuitem

#ежевика #кнопка #экран #menuitem

Вопрос:

У меня есть требование к наличию экранных кнопок навигации вместе с пунктами меню на blackberry. Мне нужно генерировать команды пунктов меню в виде экранных кнопок. Есть ли способ создать кнопки элементов экранного меню в Blackberry? т. е. на каждом экране моего приложения пункты меню должны быть заполнены как экранные кнопки, имеющие одинаковую функциональность?

Спасибо

Ответ №1:

Самый простой способ выполнить то, что вы пытаетесь сделать, — это написать одну функцию, после чего и кнопка, и пункт меню будут использовать одну и ту же функцию.

Например:

 function doSomething() {
   // Your Code Here
}

// In the function building your screen
MenuItem somethingMi = new MenuItem() {
  private MenuItem() { super("Do Something",100001, 5); }

  public void run() { doSomething() };
}

Button somethingBtn = new ButtonField("Do Something");
somethingBtn.setChangeListener(new FieldChangeListener() {
  public void fieldChanged(Field field, int context){
    doSomething();
  }
}

addMenuItem(somethingMI);
add(somethingBtn);
  

Комментарии:

1. Спасибо, ребята, я делаю это так, как вы сказали. Но я ожидал какого-то способа автоматического заполнения пунктов меню в виде экранных кнопок, поскольку в моих приложениях используется множество динамически создаваемых экранов. Похоже, BB не в пользу экранных кнопок. Еще раз спасибо.

2. Я не понимаю, о чем вы просите. Почему я должен хотеть, чтобы элемент меню отображался на экране в виде кнопки, если я тщательно разрабатываю свой графический интерфейс? E Все, что после // In the function может быть разбито на части и обернуто в инструкции if, что упрощает выполнение более динамичным способом. Кстати, вы задаете свой вопрос, вы, должно быть, видели, как что-то еще делало это раньше, не могли бы вы привести мне пример?