public class MainActivity extends AppCompatActivity {
Button btn_start, btn_stop;
Thread thread;
boolean isThread = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 스레드 시작
btn_start = (Button)findViewById(R.id.btn_start);
btn_start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
isThread = true;
thread = new Thread() {
public void run() {
while(isThread) {
try {
sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
handler.sendEmptyMessage(0);
}
}
};
thread.start();
}
});
// 스레드 종료
btn_stop = (Button)findViewById(R.id.btn_stop);
btn_stop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
isThread = false;
}
});
}
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
Toast.makeText(getApplicationContext(), "안녕하세요", Toast.LENGTH_SHORT).show();
}
};
}
안드로이드 앱 만들기 #15 (Thread & Handler 사용법) – 홍드로이드
https://www.youtube.com/watch?v=aYjdfpit6lc
홍드로이드 github
https://github.com/hongdroid94/15_ThreadHandler