01/10/2018, 10:10
Cho em hỏi về CountDownTimer trong Android với ạ
ở trong hàm onFinish(), mình đã gọi lại cái start() trước cái Toast mà sao nó vẫn hiển thị Toast được ạ
em cám ơn ạ
Bài liên quan
ở trong hàm onFinish(), mình đã gọi lại cái start() trước cái Toast mà sao nó vẫn hiển thị Toast được ạ
em cám ơn ạ
Nghĩa là tại câu lênh này nó tạo ra một đối tượng CountDownTimer mới, chạy trên 1 thread riêng mới, chứ không phải là nó tự khởi động lại chính nó nên câu lênh Toast tiếp tục được thực hiện
em cám ơn ạ:slight_smile:
chẳng thà không comment còn hơn là đưa ra 1 chỉ dẫn sai, rất nguy hiểm.
Nguồn: https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/os/CountDownTimer.java
Sở dĩ gọi start mà vẫn toast được là do khi gọi start thì sẽ đặt 1 lệnh queue async cho hệ thống (đây là dạng lập trình multi thread), vậy nên sau khi kết thúc method start thì nó sẽ vẫn tiếp tục chạy tiếp lệnh được viết nên vẫn Toast ra như thường.
cáo lỗi bác mình nhầm