private class ThreadTakePictures extends Thread { final static int STATE_DONE = 0; final static int STATE_RUNNING = 1; int mState; public ThreadTakePictures(){} //--------------------------------------------------------------------------------- final Handler handler = new Handler(){ public void handleMessage(Message msg){ switch(msg.what){ //이곳에서 GUI 관련 작업을 할수 있다. //쓰레드 내부에서 직접 UI 변경을 하면 죽는 현상이 나와서 핸들러 //를 이용해서 UI 변경작업을 해야 한다. // case 0: tmpView.setText(tmpStr); break; } } }; //--------------------------------------------------------------------------------- public void run() { mState = STATE_RUNNING; while (mState == STATE_RUNNING) { try { Thread.sleep(300); } catch (InterruptedException e) {} try { mCamera.autoFocus(mAutoFocus); }catch (Exception e) {} //상황에 맞는 UI 변경명령.. handler.sendEmptyMessage(0); } } // 현재의 상태를 설정하는 메소드 public void setState(int state) { mState = state; } }
안드로이드에서 쓰레드 사용법
답글 남기기