2

postedDelayed メソッドを使用してアクティビティを更新しましたが、これは正常に機能します。しかし、問題は、[戻る] ボタンを押しても、postdelayed メソッドが前のアクティビティをコールバックすることです..

// 30000 ミリ秒のアクティビティのポスト遅延更新のハンドラー

mHandler.postDelayed(new Runnable() {
public void run() {
               dostuff();

        }
            }, 30000);
    }

protected void dostuff() {
Intent intent = getIntent();
finish();startActivity(intent);
Toast.makeText(getApplicationContext(), "refreshed", Toast.LENGTH_LONG).show();
}

public void onBackPressed() {
        super.onBackPressed();
        finish();
        mHandler.removeCallbacks(null);
        }

protected void onStop() {
            mHandler.removeCallbacks(null);
        super.onStop();
    }
4

3 に答える 3

0

このコードを使用して、3 秒の遅延後に実行できます。

new Timer().schedule(new TimerTask() {          
    @Override
    public void run() {

        // run your code here    

    }
}, 3000);
于 2014-06-06T10:26:36.557 に答える
0

postdelayed メソッドでブール値のサインを作成します。サインを true として初期化し、アクティビティが終了したら、サインの値を false に設定します。

于 2013-04-17T03:36:47.917 に答える