2012-02-11 39 views
5

Tôi cố gắng mở rộng ConuntDownTimer để thêm các phương thức tạm dừng và tiếp tục theo cách này:Làm cách nào để mở rộng CountDownTimer để thêm phương thức tạm dừng và tiếp tục?

public class CountDown extends CountDownTimer { 

    private long resume; 
    private long millisInFuture; 
    private long countDownInterval; 

    public CountDown(long millisInFuture, long countDownInterval) { 
     super(millisInFuture,countDownInterval);  
     resume = millisInFuture; 
     this.millisInFuture = millisInFuture; 
     this.countDownInterval = countDownInterval; 
    } 

    public void play() { 

     // start 
     if(millisInFuture == resume) { 
      super.start(); 

     // restart 
     } else { 
      CountDown cd = new CountDown(resume, countDownInterval); 
      cd.play();  
     }    
    } 

    @Override 
    public void onTick(long millisUntilFinished) { 
     resume = millisUntilFinished; 
     // other code 

    } 
} 

Vấn đề là "khởi động lại" trong phương pháp chơi bởi vì, theo cách này, tôi đã tạo ra một istance của đếm ngược sẽ hiển thị sai giây vì có gần hai sự kiện "onTick". Tôi có thể giải quyết vấn đề này không? (Tôi hy vọng tiếng Anh của tôi là dễ hiểu)

Trả lời

3

Tôi không thấy bất kỳ cách nào để làm những gì bạn muốn bằng cách mở rộng lớp học. Bạn sẽ được phục vụ tốt nhất bằng văn bản của riêng bạn. Here's nguồn cho nó.

+0

ok, tôi vừa thêm phương thức tạm dừng – Webman

Các vấn đề liên quan