1

時間が経過している間にユーザーが何らかのタスクを実行する必要があるアプリケーションを作成しています。私がそれをどのように考えていたかは次のとおりです。

タスクをユーザーに表示 -> 秒数のカウントを開始 -> タスクが特定の秒数以内に解決されない場合、アプリケーションは「失敗しました」と書き込みます。

私は今まで同じものに出くわしていなかったので、私の頭には1つの解決策しかありません-タスクを使用済みに表示し、秒を数えて待機してスレッドを開始します。

sleep(1000);
secondsCounter++;
if (secondsCounter => LIMIT){
    write("You failed!");
}

それでも、これは適切な解決方法ではないことがわかります。他の(より良い)方法はありますか?

4

1 に答える 1

1

これにはハンドラーを使用します。

// set this to true if user succeeds before time runs out.
boolean userSucceeded = false;

new Handler().postDelayed(new Runnable() {
    public void run() {
        if (!userSucceeded) {
            // write("you failed")
        }
    }
}, 1000L); // 1 second
于 2013-07-20T20:46:47.120 に答える