Wednesday, October 4, 2017

Làm đồng hồ đếm ngược trong Android

Ta muốn làm một đồng hồ đếm ngược để chờ một khoảng thời gian nào đó. Ví dụ trong game ta cho người chơi 1 phút để chơi, hết giờ mà chưa hoàn thành thì ta hiện thông báo Game Over chẳng hạn.
Hãy khai báo một biến đếm ngược CountDownTimer w; lên trên dòng Override để nó là biến toàn cục.
Nhập thư viện cần dùng vào.
Copy đoạn code sau vào dưới các dòng findViewByid.
w=new CountDownTimer(60000, 1000) {           
  public void onTick(long mil) {
   tv.setText("Seconds remaining: " + mil/1000);
  }      
public void onFinish() {
tv.setText("Seconds remaining: 0");  
Intent in = new Intent(MainActivity.this, newclass.class);
startActivity(in);
}
}.start();  
Ta đặt thời gian chờ 60 giây và đếm lùi dần.
Trong public void onFinish() ta set dòng chữ khi hết giờ và bật ra class mới, một thông báo game over chẳng hạn.
Nếu chưa hết giờ mà người dùng đã ấn nút Back để thoát thì ta cần hủy Coundown timer đi.
Thêm các dòng sau vào trên ngoặc đóng cuối cùng.
public void onBackPressed()
{        
w.cancel();
finish();
}   
mily:"Courier New";color:#7F0055'>this, R.drawable.luclac);

image.startAnimation(lac);
Muốn tăng thời gian thì tăng giá trị repeatCount lên là được.


No comments:

Post a Comment