3

アクティビティにボタンがあります。トーストをクリックすると表示されます。しかし、もう一度クリックすると、トーストショーが再び表示されます。そのため、このトーストを何度もクリックすると、長い間表示されます。最初に消えると、次に表示されます。ボタンをもう一度クリックすると、最初のトーストが非表示になります。

4

2 に答える 2

5

すでに表示されている場合は、メソッドを呼び出しcancel()てToastを非表示にします。

このAPIをご覧ください。

これは、Toastのオブジェクトで簡単に呼び出すことができます。

Toast toast = new Toast(context);

toast.setText("Text");
toast.show();//(call show()  to display Toast)
toast.cancel();//(call cancel() to  hide Toast).
于 2012-04-23T10:56:56.143 に答える
3

このコードをアクティビティ(グローバルトースト)に追加し、新しいテキストを表示したい場合はキャンセルします。

Toast myLovelyToastThatNeverDies;
public void onClick(View v) {

    if(myLovelyToastThatNeverDies==null)
        myLovelyToastThatNeverDies = new Toast(Activity.this);
    else
        myLovelyToastThatNeverDies.cancel();
    myLovelyToastThatNeverDies.setText("my new text");
    myLovelyToastThatNeverDies.setDuration(anAverageDuration);
    myLovelyToastThatNeverDies.show();
}
于 2012-04-23T11:33:27.817 に答える