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