Toasts in Android are used to show Notification within an Activity. You may be knowing what alert messages are in HTML. Using JavaScript alert() function we can Alert the user about something using a popup message, the user sees the message and clicks the OK button to dismiss the dialog.
Toast messages in Android Programming are similar but they are terminated/dismissed by itself (we do not have any buttons). We need to set a time period for which the message has to be displayed when the time is reached the message fades away, it is usually shown at the bottom of the Activity page.
Some examples where you can an Android Toast Message be helpful:
Example 1: We have an Email application and the user deletes an email, then when that email is been deleted we can display a Toast message saying "Email has been deleted"
Example 2: At login, if the email id or password is incorrect we can display a toast message saying "Invalid id or password"
Example 3: When a message has been sent, we can notify the user "Message sent" using toast messages.
Let's see how Toasts works:
The above code snippet is the structure of creating a Toast object and setting a "Text" message and its "Duration"
makeText() is the method we have to use which takes in three parameters, Let's see each of these parameters one-by-one,
- Context:
It is the Application context.
You can get the Application context using, Context context = getApplicationContext();
Another way of getting Context is referring to the Activity class that you are displaying the Toast message. I suppose the Activity class is MainActivity where we want to display the message,
Toast toast = Toast.makeText(MainActivity.this, text , Toast.LENGTH_SHORT); toast.show();
You can also refer to the class by simply referring "this"
Toast toast = Toast.makeText(this, text , duration); toast.show();
Text :
It is the string message that you want the toast to display on the Android Activity screen.
String toastTextMsg = "Hello, welcome to Code2care!"; Toast toast = Toast.makeText(MainActivity.this, toastTextMsg , Toast.LENGTH_SHORT); toast.show();
Note: If any of the resources is not found then you will get a Resources.NotFoundException exception.
Duration :
It is the time period in milliseconds for which the toast message will be displayed on the screen. The toast message be visible as a fade-in effect and will be dismissed automatically when this time duration has elapsed with a fade-out effect.
There are two constants for duration time you can use from the Toast class
- Toast.LENGTH_SHORT : This will display the toast for a short period of time.
- Toast.LENGTH_LONG : This will display the toast for a long period of time.
Note that you can only have these two values for the duration of toast message, If you define a custom duration as Integer value you will get a warning message in the gutter area saying,
Toast.makeText(this, "Hello", 5000); toast.show();
⛏️ "Expected duration Toast.LENGTH_SHORT or Toast.LENGTH_LONG, a custom duration value is not supported"
Actual duration of these constants are 3.5 seconds for LONG_DELAY and 2 seconds for SHORT_DELAY,
private static final int LONG_DELAY = 3500; // 3.5 seconds private static final int SHORT_DELAY = 2000; // 2 seconds
You can display toast as one statement too,
Toast.makeText(this, "Hello, this is a android toast message!", Toast.LENGTH_LONG).show();
Changing the Position of Toast message :
By default the toast message is displayed at the bottom of an Activity screen aligned vertically.
If you want to display the toast message at the different position then you can use setGravity() method.
setGravity(int, int, int) :
To get a location at which the notification should appear on the screen it has 3 parameters,
-
Gravity constants :
You can set the position of toast message using gravity constants,
Gravity.TOP Gravity.BOTTOM Gravity.LEFT Gravity.RIGHT
x-position offset
If you want to move the toast message towards the right side, increase this value.
y-position offset
If you want to move the toast message towards the left side, increase this value.
Example : toast.setGravity(Gravity.TOP, 0,0);
Toast Example : Java Code
package com.example.toastexample;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Gravity;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Toast Example
Toast toast = Toast.makeText(this,
"Hello, this is a android toast message!", Toast.LENGTH_LONG);
toast.setGravity(Gravity.TOP, 4, 5);
toast.show();
}
}
- appcompat_v7 errors after updates to API level 21 Material Theme
- adb: The Android Debug Bridge and Commands
- The Android Virtual Device myEmulator is currently running an emulator and cannot be deleted.
- How to make TextView Text Transparent [Android]
- Android is starting optimizing... app 1 of 1
- How to make Text in TextView bold and italic in Android
- Android Development - How to switch between two Activities
- Android : IOException: Unable to open sync connection!
- Android Toolbar example with appcompat_v7 21
- How to Change Android Title Bar Color?
- How to Add Padding to Android TextView
- JavaScript : redirect page to other url
- Programmatically Send an Email from Android App using Intent
- What is Android Toast.LENGTH_SHORT and Toast. LENGTH_LONG durations
- [Soluiton] You already have the latest version of Android Studio installed
- Detect swipes on Android Activity
- Add Buttons at the bottom of Android Layout xml file
- Android Lint app_name is not translated in af (Afrikaans) am (Amharic) ar (Arabic) bg (Bulgarian)
- Hide Navigation Bar from Android Screen Activity
- Android Disable EditText from Auto Focus on Activity load
- Toast not getting displayed Android App
- How to Enable Developers Option in Android Phones Settings
- Android : Duplicate registration for activity com.example.abc
- Android ListView turns Black or Flickers while Scrolling
- Android Studio Ctrl Shift o auto import not working
- How to Find Downloaded Files on Windows 11 - Windows-11
- How to Connect to Azure AD Account using PowerShell on Mac - Powershell
- Delete file using PHP code : unlink() - PHP
- Linux: Create a New User and Password and Login Example - Linux
- Java JDK 17 LTS Version New Features and Support Timelines - Java
- Get FIle Size using PowerShell - Powershell
- Turn on off volume change button sounds Mac OS X - Mac-OS-X
- CSS Flip Card (Back and Front) Example with Code - CSS