1

pause方法がわかりませんcounterdowntimer。私は公開カウントダウンタイマーを持っています:

    public CountDownTimer myTimer = new CountDownTimer(300000, 1000) {
    public void onTick(long millisUntilFinished) {
        ...
        setCurrentTime(currentTime);
    }
    public void onFinish() {
        setCurrentTime("0");
    }
};

私はできますが、.start()できません。DevDocsによると.cancel()buttonclick.wait()

このメソッドは、このオブジェクトのモニターを所有するスレッドによってのみ呼び出すことができます。スレッドがモニターの所有者になる方法については、notify()を参照してください。

どういう意味ですか?

変数に保存しようとしましたが、その値からmillisUntilFinished再開するにはどうすればよいですか?timer

他に解決策はありますか?

4

2 に答える 2

1

たとえば、グローバル変数を実装してから、変数が true かどうかprivate Boolean pauseTimer=false;を確認し、それonTickが true であるかどうかを確認できます。SystemClock.sleep()

于 2011-12-22T16:21:03.833 に答える
-1

現在のスレッドがそのオブジェクトのモニターを所有していない限り、そのオブジェクトに対して wait() を実行することはできません。そのためには、同期する必要があります。

于 2011-12-22T16:20:11.267 に答える