BlackBerry - Как программно обновить экран просмотра событий календаря? - PullRequest
0 голосов
/ 14 ноября 2009

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

Следующий код находится внутри метода onClose () экрана и находится после закрытия экрана.

UiApplication.getUiApplication().invokeLater(new Runnable()
{
    public void run()
    {
        try
        {
            event0.setString(Event.NOTE, 0, 
                PIMItem.ATTR_NONE, "blahblan");
            event0.commit();
            //The active screen is Event Viewer. I tested it.
            Screen screen = 
                UiApplication.getUiApplication().getActiveScreen();
            screen.invalidate();
        }
        catch(Exception pexp)
        {
            return;
        }
    }
});

Заранее спасибо.

1 Ответ

0 голосов
/ 25 ноября 2009

Возможно событие обновляется только в конструкторе экрана просмотра событий ...

Обходной путь - закрыть и открыть экран просмотра событий ... используя инъекции событий

mEvent.commit();
// The active screen is Event Viewer. I tested it.
Screen screen = UiApplication.getUiApplication().getActiveScreen();
UiApplication.getUiApplication().popScreen(screen);
KeyEvent event = new KeyEvent(KeyEvent.KEY_DOWN, Characters.ENTER,
    KeyListener.STATUS_NOT_FROM_KEYPAD);
event.post();

Не забудьте разрешить доступ к приложениям -> Взаимодействие -> Моделирование ввода.
Или запросить его прагматично ( Как дать приложению blackberry все доступные разрешения? )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...