Откройте главный экран с другого главного экрана

В моем приложении я хочу открыть главный экран с другого главного экрана. Как я могу это сделать?

Из UiApplication я могу использовать pushScreen(Экран), чтобы перейти на MainScreen. Но когда я пытаюсь сделать то же самое с MainScreen, я получаю ошибку JVM 104.

2 ответа

Решение

Допустим, у вас Screen2 расширяет MainScreen.


Screen2 s2 = new Screen2(); 
UiApplication.getUIApplication.pushScreen(s2); 

Обратите внимание, что приведенный выше код должен выполняться из основного потока событий Ui. Если вы отображаете экран в ответ на событие пользовательского интерфейса, это значение по умолчанию. Тем не менее, если вы выдвигаете экран из фонового потока, вам нужно перенаправить вызов в поток событий следующим образом:

UiApplication.getUiApplication().invokeLater( new Runnable() { 
    public void run() { 
     Screen2 s2 = new Screen2(); 
     UiApplication.getUIApplication.pushScreen(s2); 
    }
});
Ui.getUiEngine().pushScreen(Screen);
Другие вопросы по тегам