2016-04-13 13 views
0

私はアプリのようなクッキークリッカーをしたいと思います。 しかし、ボタンを押してからintを増やしたいだけです。 これを試しましたが、正しく動作しません。 run()はないUIThreadに、別のスレッドで実行されているので、その作業がない私は時間の経過とともに単純なインクリメントが必要です

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); 
+0

件数がグローバル –

+0

にありますか? –

答えて

1

理由があります。 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); 
関連する問題