1

このメソッドを使用すると、実行したいアクションに遅延を設定できます。

final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
  @Override
  public void run() {
    //Do something after 5 seconds
  }
}, 5000);

この 5 秒のカウントダウンをトーストに表示する方法はありますか? ありがとう

4

2 に答える 2

4

それらが重なり合って遅延が発生しているという意味であれば、新しいトーストを表示する前に前のトーストをキャンセルする必要があります。

もっと派手なものが必要な場合は、カウントダウンを表示する代わりに PopupWindow を使用してみてください。レイアウトなどの自由度が高くなります。

http://developer.android.com/reference/android/widget/PopupWindow.html

これは他の誰かによる回答です: https://stackoverflow.com/a/15174370/2767703


例:

Toast toast = Toast.makeText(this, "10", Toast.LENGTH_SHORT);
toast.show();
new CountDownTimer(10000, 1000) {  
        public void onTick(long m) {  
           long sec = m/1000+1;  
           toast.cancel();
           toast.setText("" + sec);
           toast.show();
        }  
        public void onFinish() {  
           // Finished  
        }  
    }.start();
于 2013-12-02T13:54:07.840 に答える
1

はい、次のことを行います

new CountDownTimer(30000, 1000) {

    public void onTick(long millisUntilFinished) {
      Log.i("seconds remaining: " ,""+ millisUntilFinished / 1000);
    }

    public void onFinish() {
         Log.i("Timer Finished");
    }  
}.start();
于 2013-12-02T14:11:45.267 に答える