【问题标题】:I need a simple incrementation over time function我需要一个简单的随时间递增的函数
【发布时间】:2016-04-13 12:34:28
【问题描述】:

我想做一个像 app 这样的 cookie 点击器,我需要一个简单的随时间递增的函数。 但我只希望在按下按钮后 int 开始增加。 我试过了,但不能正常工作。

 int delay = 5000; 
 int period = 1000; 
 int count = 0;
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask()
    {
        public void run()
        {


            count++;
            score.setText(String.valueOf(count));


        }
    }, delay, period);

【问题讨论】:

    标签: android time timer increment


    【解决方案1】:

    它不工作的原因是因为run() 在单独的线程上运行,而不是在 UIThread 上。你需要在 UIThread 中运行setText。看下面的代码

    timer.scheduleAtFixedRate(new TimerTask() {
                    @Override
                    public void run() {
    
                        runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                count++;
                                score.setText(String.valueOf(count));
                            }
                        });
                    }
                }, delay, period);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-03
      • 2015-05-18
      相关资源
      最近更新 更多