如何使用处理程序等待?

时间:2016-04-17 17:42:48

标签: android view handler ondraw

我正在尝试显示由线条组成的图表,我希望逐行显示它以暂停。 所以我需要在精确的间隔时间调用我自己的onDraw方法,但我不知道如何做到这一点。

我在一个while循环中尝试这个,它改变了" start"的值。和"结束"这是线的坐标。

  final Handler h1 = new Handler();
  h1.postDelayed(new Runnable() {public void run() {
      lineView.addLineToList(new Line(start, end));
      h1.postDelayed(this, 1000);
      lineView.invalidate();
      }

  }, 1000);

但是所有的行都是同时显示的。

谢谢你。

1 个答案:

答案 0 :(得分:0)

处理程序postdelay只是将你的命令推迟到另一个时间(这里,1000毫秒),它没有循环再次执行它。如果你想在一段时间内调用一个函数,只需使用" Timer"如下所示:

long delay = 500;
long period = 1000;

Timer timer = new Timer();
timer.schedule(yourFunction, delay, period);