facebook twitter hatena line email

Android/遅延処理

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

○m秒後に処理

new Handler().postDelayed(new Runnable() {
    public void run() {
       Log.i("testtest", "run");
    }
}, 10000L); // 10000ms後に処理

0Lだと瞬時

定義後に削除もできる

Handler handler = new Handler();
Runnable runnable = new Runnable() {
    public void run() {
        Log.i("testtest", "run");
    }
};
handler.postDelayed(runnable, 10000L); // 10000ms後に処理
// 以下で定義削除
handler.removeCallbacks(runnable);

x時間間隔で発行

Handler handler = new Handler();
Runnable runnable = new Runnable() {
    public void run() {
        Log.i("testtest", "run");
        handler.postDelayed(this, 10000L); // ここのthisの部分、runnable変数にできないのでthisしておけば良い。
    }
};
handler.postDelayed(runnable, 10000L); // 10000ms後に処理