Code2care : TechZone Apps & Tutorials

How to create Toast messages in Android




Toast in Android Example

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 user deletes a 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.




Lets see how Toasts works :



Toast toast = Toast.makeText(context, text , duration); toast.show();

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, Lets see each of these parameters one-by-one,

1. Context :


    It is the Application context.

    You can get the Application context using,
    Context context = getApplicationContext();

    Another way of getting Context is referring to Activity class that you are displaying the Toast message.
    If 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();


2. 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 resource is not found then you will get an Resources.NotFoundException exception.



3. 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

    1. Toast.LENGTH_SHORT : This will display the toast for a short period of time.

    2. Toast.LENGTH_LONG : This will display the toast for a long period of time.

    Note that you can only have these two values for 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 a Activity screen aligned vertically.

    If you want to display the toast message at different position then you can use setGravity() method.

    setGravity(int, int, int ) :

    To get location at which the notification should appear on the screen it has 3 parameters,

    1. Gravity constants :

    You can set the position of toast message using gravity constants,

      Gravity.TOP
      Gravity.BOTTOM
      Gravity.LEFT
      Gravity.RIGHT


    2. x-position offset

      If you want to move the toast message towards the right side, increase this value.


    3. 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 at the top of screen


    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();
    
    	}
    
    }









Top




Posts related to android.


1. Share image and text Twitter using your Android Application Programatically

2. The Android Virtual Device 'myEmulator' is currently running an emulator and cannot be deleted.

3. Make Android View Scrollable both Horizontally and Vertically

4. Can we move apps like WhatsApp, Facebook to external MicroSD card

5. Parsing Data for android-21 failed unsupported major.minor version 51.0

6. Android : Prevent App for rotation landscape or portrait

7. ADT quit unexpectedly error on Mac OSX Android Eclipse SDK

8. Android-Failed to install apk on device EOF Timeout Error

9. How to change Android EditText Cursor Color

10. JavaDocs for Android SDK Eclipse IDE

11. Two Buttons next to each other in Android Layout

12. Change Title text for Android Activity using java code

13. How to add Newline to text in Android TextView

14. Android : Unable to load VM from snapshot : Mac OS X Error

15. INVALID FILE NAME: MUST CONTAIN ONLY [a-z0-9_.] Android Eclipse Error

16. Hide Tittle bar and Navigation bar from android activity

17. appcompat_v7 errors after updates to API level 21 Material Theme

18. How to Copy Text to Android Clipboard Programatically ClipboardManager (Both Old and New SDK)

19. [Solution] Running Android Lint has encountered a problem NullPointerException Error

20. Remove Trailing zeros BigDecimal Java

    more...






Popular tags
android
x 175
eclipse
x 29
notepadplusplus
x 20
macosx
x 14
sharepoint
x 14
html
x 14
mac
x 13
androidstudio
x 11




1000+ C Programs     PHP Tutorial     JSON Tutorial     Swift Tutorial     India Pinocdes     About Us     Privacy Policy


Code2care © 2012-17