사용자입력(터치)가 있으면 화면에 표시하고
사용자 입력이 없이 일정시간이 경과하면 어플리케이션이 종료되는 동작을 구현하고 있는 초보개발자 입니다.
앱이 실행될때 타이머가 같이 작동하게 되고 계속 입력이 없으면 그대로 종료되고
OnTouchListener에서 입력이 들어오면 다시 타이머를 최기화 시키고자 합니다
터치하면 카운팅이 올라가는것도 되고, 앱 실행하고 10초간 아무 입력 없으면 종료되는것 까지 됩니다.
근데 타이머 리셋이 한줄이면 될꺼 같은데 그게 참 마음같이 안되서 계속 막히고 있습니다.
리셋을 시키는 방법이 따로 있는 것인지 배우고 싶습니다
package org.androidtown.l;
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.EditText;
public class MainActivity extends Activity {
EditText editText1;
int touchCount = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new CountDownTimer(10000,10000){
public void onTick(long millisUntilFinished) {
finish();
}
public void onFinish() {
finish();
}
}.start();
editText1 = (EditText) findViewById(R.id.editText1);
View view1 = (View) findViewById(R.id.view1);
view1.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event){
if(event.getAction() == MotionEvent.ACTION_DOWN){
incrTouchCount();
showTouchCount();
timerReset();
//터치가 입력되면 위 세개 동작 실행
}
return true;
}
});
}
private void incrTouchCount() {
touchCount = touchCount + 1;
}
private void showTouchCount() {
editText1.setText("터치한 횟수 : " + touchCount);
}
private void timerReset() {
// 이곳에 타이머 리셋
}
public void onButton1Clicked(View v) {
finish();
}
}