Книга: Beginning Android
Raising Toasts
Raising Toasts
A Toast
is a transient message, meaning that it displays and disappears on its own without user interaction. Moreover, it does not take focus away from the currently active Activity
, so if the user is busy writing the next Great American Programming Guide, they will not have keystrokes be “eaten” by the message.
Since a Toast
is transient, you have no way of knowing if the user even notices it. You get no acknowledgment from them, nor does the message stick around for a long time to pester the user. Hence, the Toast is mostly for advisory messages, such as indicating a long-running background task is completed, the battery has dropped to a low-but-not-too-low level, etc.
Making a Toast
is fairly easy. The Toast
class offers a static makeText()
that accepts a String
(or string resource ID) and returns a Toast
instance. The makeText()
method also needs the Activity
(or other Context
) plus a duration. The duration is expressed in the form of the LENGTH_SHORT
or LENGTH_LONG
constants to indicate, on a relative basis, how long the message should remain visible.
If you would prefer your Toast
be made out of some other View
, rather than be a boring old piece of text, simply create a new Toast
instance via the constructor (which takes a Context
), then call setView()
to supply it with the view to use and setDuration()
to set the duration.
Once your Toast
is configured, call its show()
method, and the message will be displayed.