一个接一个地运行处理程序

时间:2014-07-18 16:58:31

标签: android

我有这个代码,如果我使用lights(),它会很好用;一旦 但是如果我多次使用它,比如lights(); lights(); lights(); ......那么多。当应用程序运行时,它们似乎同时运行

public void lights() {
   try {if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)){
      cam = Camera.open();
      Parameters p = cam.getParameters();
      p.setFlashMode(Parameters.FLASH_MODE_TORCH);
      cam.setParameters(p);
      cam.startPreview();}
      } catch (Exception e) {e.printStackTrace();}
      }
    }
    mHandler.postDelayed(new Runnable() {public void run() {stop();}
        }, 1000);   
}
public void stop(){
    try {if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH))
    {cam.stopPreview();cam.release();cam = null;}} catch (Exception e) {e.printStackTrace();}
    }

如何让处理程序一个接一个地等待?等待第一个完成。我想发出警报但是如果我使用ThreadSleep();我的应用程序崩溃太多,可能认为UI没有响应

0 个答案:

没有答案