0

我正在尝试查看随机文本 3 次,中间有时间暂停。我就是不能!这一切都一起运行。我承认我根本不知道线程主题,我只需要简单的解决方案。

  public void loading3() {

      Random randomDouble = new Random();
      temp = (double) randomDouble.nextInt(100);
      try {
        Thread.sleep(1000);
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
      result.setText(temp + "%");

    }

这是代码。我想连续使用 3-4 次。我该怎么做?我尝试在循环内部或连续编写相同的方法,但它不会工作,因为它不会等待第一个方法结束后再开始新的方法。

4

1 回答 1

1

你不应该睡在主线程上。这可以通过Handler或轻松完成Timer。这是一个带有的示例Handler

private int mCount = 0;

private Handler mHandler = new Handler();

private Runnable mUpdater = new Runnable() {
    public void run() {
        Random randomDouble = new Random();
        temp = (double) randomDouble.nextInt(100);
        result.setText(temp + "%");
        mCount++;

        if (mCount < 3)
            mHandler.postDelayed(mUpdater, 1000);
    }
}

public void loading3() {
    mHandler.postDelayed(mUpdater, 1000);
}
于 2013-01-06T03:28:21.610 回答