-2

重複の可能性:
Java / Android プログラミング - ループ FAIL

私がやろうとしていること:1時間に1回乾杯すること。問題: while ループが適切な間隔を持つのは、最初の実行時だけです。2 回目は、トーストの間隔が追加されません。while ループ内に含まれるコードはデバッグ中であり、完全に機能していることに注意してください。唯一の問題は、トースト間の遅延です。

 if (SelectedOption == 1) {
    int count = 1;
    while (count <= 10) {               
         final Handler handler = new Handler();
         Timer t = new Timer();
         t.schedule(new TimerTask() {
             public void run() {
                handler.post(new Runnable() {
                    public void run() {
                    db.open();
                    String fact = "";
                    fact = db.getRandomEntry();
                    Context context = getApplicationContext();
                    CharSequence text = fact;
                    int duration = Toast.LENGTH_LONG;
                    Toast toast = Toast.makeText(context, text, duration);
                    toast.show();
                    db.close();
               }
               });
          }
      }, 3600000);
      count++;
   }
    } else if (SelectedOption == 2) 
            { ... // Something similar using different approach }
4

0 に答える 0