一定時間後に開始するアクティビティがあります。このアクティビティが開始されると、ユーザーは新しいタイマーを開始するボタンを押すことになっています。
ただし、ユーザーがボタンを押さない場合は、ボタンが押されるまで 5 秒ごとにトーストを表示する必要があります。
CountDownTimer を使用しようとしています。これまでのコードの基本は次のとおりです。
エラーはありませんが、現時点ではトーストは表示されていません。MyCount クラスを BreakActivity クラス内に配置しても問題ありませんか (外部に配置するとエラーが発生します)。
これをソートするための助けがあれば大歓迎です!
public class BreakActivity extends Activity {
Button startBreakButton; // button to start the break timer
Boolean clicked= false;
CountDownTimer counter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.breakscreen); // sets layout to breakscreen.xml
MyCount counter;
counter=new MyCount(5000,1000);
counter.start();
startBreakButton = (Button) findViewById(R.id.startBreakButton);
startBreakButton.setOnClickListener(mStartListener);
View.OnClickListener mStartListener = new OnClickListener() {
clicked=true;
//other listener code
};
public class MyCount extends CountDownTimer{
public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
@Override
public void onFinish() {
if(clicked=false){
Toast.makeText(getApplicationContext(), "TAKE A BREAK", Toast.LENGTH_LONG).show();
counter= new MyCount(5000,1000);
counter.start();
}
}
@Override
public void onTick(long millisUntilFinished) {
long s1 = millisUntilFinished;
}
}
};