提前谢谢大家! 我有一个任务(为了理解我会尝试改写)。我必须显示从1到100的数字,间隔为1秒。 但是用户可以单击以暂停。 (因为我发现仅在特定时间内停止了流),我决定杀死他并创建一个新流。但是,在日志中创建了一个新文件后,我看到它可以正常工作,并且我删除了一个(平行的两个文件)。 1)如何正确杀死流并重新创建它Handler + Runnable 2)通过什么方式,您可以创建可以暂停的流(而不是特定的秒数)
答案 0 :(得分:0)
只需跟踪外部变量中的数字,即可使用处理程序发布可运行对象(然后将其以延迟方式发布)。遵循以下内容应该可以。
final int[] count = {0};
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
count[0]++;
if (count[0]<=100) {
//Print the count[0] value however you'd like.
handler.postDelayed(this, 1000);
}
}
};
//To run
handler.post(runnable);
//To pause
handler.removeCallbacks(runnable);