我需要我的應用程序在用戶按下按鈕後的指定時間內觸發警報。這些文檔使得它看起來像Handler是我需要的,而且使用似乎已經死了。爲什麼不按預期觸發警報?
但是,我發現儘管使用postDelayed,我的例程立即運行。我知道我錯過了一些明顯的東西,但我看不到它。爲什麼下面的代碼會讓手機立即振動而不是等待一分鐘?
...
final Button button = (Button) findViewById(R.id.btnRun);
final Handler handler = new Handler();
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
...
handler.postDelayed(Vibrate(), 60000);
}
});
...
private Runnable Vibrate() {
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(300);
return null;
}
我不喜歡downvoting ......不過,你最好解決您的答案。在這種情況下,振動()作爲一種方法,而不是一個類。 – Cristian 2010-11-02 17:43:28
排序,謝謝你的提醒。 – fredley 2010-11-02 17:46:28