2011-06-20 6 views
0

カウントダウンタイマーを60秒間カウントダウンしようとしています(オプションでユーザーがスキップ可能)。コードのその部分が機能します。カウントダウンタイマーの完了時にアクションが実行されるようにするにはどうすればよいですか(ボタンと同じアクションでアクティビティを終了します)。AndroidでCountDownタイマーの完了アクティビティを設定するにはどうすればよいですか?

public void startCountdown(int total, final int increase) { 
    final TimerClassExtended timer = new TimerClassExtended(total,1000); 

    timer.start(); 


    Button skip = (Button)findViewById(R.id.skip); 
    skip.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      timer.cancel(); 
      setResult(RESULT_OK); 
      finish(); 
     } 

    }); 

} 

次の行を修正する必要がありました。しかし、私は8時間自分自身に答えることはできません...

今後の参考として、TimerClassExtendedは私が必要とした余分なメソッドを追加できるようにCountDownTimerを拡張したクラスです。

final TimerClassExtended timer = new TimerClassExtended(total,1000) { 
     public void onFinish() { 
      setResult(RESULT_OK); 
      finish(); 
     } 
    }; 
+1

TimerClassExtendedは何?これはAndroid SDKまたはJava SDKの一部ではないため、このクラスの機能については知らないため、誰もあなたを助けることはできません。 –

+0

良い点。それは私がいくつかの余分なメソッドを作成する拡張CountDownTimerを作成したちょうどクラスだった。私はそれを考え出した、ありがとう。しかし、私は自分の答えを7時間以上追加することはできません。 – easycheese

答えて

0

私はカスタムクラスを持っていたので、私は次のように追加しました:

final TimerClassExtended timer = new TimerClassExtended(total,1000) { 
    public void onFinish() { 
     setResult(RESULT_OK); 
     finish(); 
    } 
}; 
1

私はあなたが使用しているクラスの知識がないが、あなたはTimerTaskを使用し、60000msのためにそれをスケジュール検討するかもしれません。

Timer timer = new Timer(); 
timer.schedule(task, 60000); 
+0

ええ、私はそれを見ましたが、CountDownTimerは画面上にカウントダウンを表示する方が良いと分かりました。私はそれを把握した、ありがとう。 – easycheese

関連する問題