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;
}
}
안드로이드에서 쓰레드 사용법
답글 남기기