首页 » 黑莓开发 » invokeLater和invokeAndWait

invokeLater和invokeAndWait

5569 4

还是今天才发现UI下有这么两个有趣的对立方法。

前者是调用并等待其它执行完毕,后者是调用让其它等待它执行完毕,初一看怎么这么绕口啊,其实很容易理解。

你建个Ui.pushscreen看看,再弄个Dialog.Alert看看。Dialog本身就是popupscreen的子类,用以下code很容易看出两者区别在何处。

UiApplication.getUiApplication().invokeAndWait(new Runnable(){
        public void run(){
          Dialog.alert(" I am a message..............................");
        }
      });
System.out.println("I am a message 2..............................");

这时屏幕输出停在了alert框中,但是debug中没有显示了”I am a message 2…………………………”,这说明下面那步还未执行。而换成下面的代码

UiApplication.getUiApplication().invokeLater(new Runnable(){
        public void run(){
          Dialog.alert(" I am a message..............................");
        }
      });
System.out.println("I am a message 2..............................");

则在debug中可以看见”I am a message 2…………………………”,这说明程序先执行了下面的代码再返回执行run()

文章评分1次,平均分5.0

本文原始地址:https://www.tiandiyoyo.com/2010/01/invokelater%e5%92%8cinvokeandwait/
本站所有文章,除了特别注明外,均为本站原创,转载请注明出处来自www.tiandiyoyo.com

您可能还会对以下文章感兴趣:

评论前先开启评论开关:


4 Comments

  1. 技术上升到一定高度了。

  2. 博主现在工作方面主要是做黑莓开发么

载入分页评论...