0

对于我正在制作的这个应用程序,当计数 = 100 时按下一个按钮,随后增加你的硬币,然后将计数设置回零。计数显示在进度条上。我正在使用 AsyncTask 每 10 秒增加一次计数值,直到达到 100。我应该怎么做才能减少每 20 秒拥有的硬币数量?

4

1 回答 1

0

你可以通过使用线程来做到这一点让我给你一个例子

导入 java.util.*;

public class TimerThreadTest {
   public static void main(String []args) {
      Task t1 = new Task("Task 1");
      Task t2 = new Task("Task 2");
      Timer t = new Timer();
      t.schedule(t1, 10000); //  executes for every 10 seconds
      t.schedule(t2, 1000, 2000); // executes for every 2 seconds
   }
}
class Task extends TimerTask {
   private String name;
   public Task(String name) {
       this.name = name;
   }
   public void run() {
      System.out.println("[" + new Date() + "] " + name + ": task executed!");
   }
}

在前面的示例中,我们给出了两个任务并确定了开始第二个任务的时间,我们应该得到这样的输出

[Thu Aug 01 21:32:44 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:46 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:48 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:50 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:52 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:53 IST 2019] Task 1: task executed!
[Thu Aug 01 21:32:54 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:56 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:58 IST 2019] Task 2: task executed!
[Thu Aug 01 21:33:00 IST 2019] Task 2: task executed!
于 2020-11-01T21:52:23.617 回答