BlackBerry - Добавляет объекты к ListField

Вы можете использовать instance_variable_set , вам не нужно полагаться на attr writer:

def initialize(data)
  data.each { |key, value| instance_variable_set("@#{key}", value) }
end

6
задан Maksym Gontar 10 December 2009 в 13:25
поделиться

3 ответа

Вы, вероятно, хотите посмотреть на использование ObjectListField. Обработка избранного действия сделана посредством содержания Объекта на экране, я сделал это ниже использования MenuItem, я не действительно уверен, как установить избранного слушателя по умолчанию, Вам, вероятно, придется обнаружить ключ и trackwheel события.

Некоторый пример кода для Вас: (не протестированный!)

MainScreen screen = new MainScreen();
screen.setTitle("my test");

final ObjectListField list = new ObjectLIstField();
String[] items = new String[] { "Item 1", "Item 2", "Item 3" };
list.set(items);

screen.addMenuItem(new MenuItem("Select", 100, 1) {
    public void run() {
        int selectedIndex = list.getSelectedIndex();
        String item = (String)list.get(selectedIndex);
        // Do someting with item
    });
screen.add(list);
11
ответ дан 8 December 2019 в 17:28
поделиться

Можно переопределить navigationClick метод как это:

ObjectListField list = new ObjectListField()
{
    protected boolean navigationClick(int status, int time)
    {
        // Your implementation here.
    }
};
2
ответ дан 8 December 2019 в 17:28
поделиться

Можно обнаружить щелчок по каждому элементу списка путем переопределения

protected boolean navigationClick(int status,int time)

Затем просто необходимо разработать, что сделать в ответ на щелчок. Путем я сделал это было при помощи анонимного класса, установленного для каждого элемента списка.

0
ответ дан 8 December 2019 в 17:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: