вызвать класс, который расширяет UiApplication и реализует Runnable из основного потока в Blackberry - PullRequest
0 голосов
/ 26 октября 2011

У меня есть класс, который расширяет UiApplication и реализует Runnable. Я хочу создать экземпляр объекта этого класса на одном из моих главных экранов. Этот первый класс похож на:

public class MyHelper extends UiApplication implements Runnable {

  public MyHelper() {
     //some code here
     new Thread(this).start();
  }

   public void run() {
    //another chunk here 
  }
}

В MainScreen у меня в navigaionНажмите кнопку:

MyHelper helper = new MyHelper();

Отладчик останавливается на общедоступном MyHelper (). Что я должен сделать, чтобы должным образом заложить это?

1 Ответ

0 голосов
/ 26 октября 2011

Вот несколько баллов

1. когда объявляется класс, расширяющий UiApplication, который он в основном создает, и поток пользовательского интерфейса и запускает поток в app.enterEventDispatcher (); вызов. Вам не нужно реализовывать интерфейс Runnable по любой причине.

public class MyHelper extends UiApplication {
        public static void main(String[] args) {
            MyHelper app = new MyHelper ();
            app.enterEventDispatcher();
        }

       public MyHelper() {
         //some code here to push screen
      }
}

2.Вы всегда можете реализовать работающий интерфейс для своего подкласса MainScreen

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

UiApplication.getUiApplication().getApplication()

Это повторяет текущий экземпляр UIApplication.

...