停止方法直到条件为真

时间:2014-12-16 14:45:04

标签: android

我正在开发Android应用,我有一个问题:

在用户按下视图之前,有没有办法暂停方法?我正在考虑做这样的事情:

  1. 为我的班级做一个名为"等待"。
  2. 的布尔值
  3. 当有人点击视图时,它会将布尔值更改为true。
  4. 最后,在主要方法中,执行以下操作:
  5. while (!wait) 
    {
     //do nothing
    }
    

    有没有更好的方法呢?

1 个答案:

答案 0 :(得分:1)

我想你是这样做的......

boolean wait = false;

public void onClick(View v) {
       switch(v.getId())
       {
       case R.id.button1:
              doSomething();
              break;
       case R.id.button2:
              wait = true;
              break;
       }
}

public void doSomething() {
       //
       // Do Task 1
       //
       while(!wait) {}
       //
       // Do Task 2
       //
}

相反,您可以像这样执行...

boolean viewClicked = false;

public void onClick(View v) {
       switch(v.getId())
       {
       case R.id.button1:
              doSomething();
              break;
       case R.id.button2:
              viewClicked = true;
              doSomething();
              break;
       }
}

public void doSomething() {
       if(!viewClicked)
       {
              //
              // Do Task 1
              //
       }
       else
       {
              //
              // Do Task 2
              //
       }
}

我希望这会有所帮助。 :)