Software Applications for
Mobile Devices Lab
SEL-448
Lab Journal: 7
Name: Muhammad Faisal
Class: BCE-8.
Enrollment no: 01-132182-036.
Submitted to: Eng. AMNA WAHEED
Lab No. 7
Create a Customized messages Toast
Software Used: Android Studio
Objective:
Understanding Create a Customized messages Toast in an Android Application
Introduction:
AndroidMobile DevelopmentProgramming. Before getting into Custom Toast, we should know
about what is toast. Toast is used to display message on current screen for some time. After some
time it doing to disappear. In this example we can learn how to customize toast message.
Task No.1: Create an application that will associate an event with a button. When user
click on a button the application will display the text types on a text filed. To display a
message, you have to use Toasts.
Coding:
XML File:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools=”http://schemas.android.com/tools”
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="buttonclick"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.404"
tools:ignore="MissingConstraints" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="First Name "
app:layout_constraintBottom_toTopOf="@+id/textView2"
app:layout_constraintEnd_toStartOf="@+id/editTextTextPersonName2"
app:layout_constraintHorizontal_bias="0.107"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.744"
tools:ignore="MissingConstraints" />
<EditText
android:id="@+id/editTextTextPersonName2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
app:layout_constraintBottom_toTopOf="@+id/editTextTextPersonName3"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.827"
tools:ignore="MissingConstraints" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Last Name"
app:layout_constraintBottom_toTopOf="@+id/btn1"
app:layout_constraintEnd_toStartOf="@+id/editTextTextPersonName3"
app:layout_constraintHorizontal_bias="0.093"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent”
app:layout_constraintVertical_bias="0.64"
tools:ignore="MissingConstraints" />
<EditText
android:id="@+id/editTextTextPersonName3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
app:layout_constraintBottom_toTopOf="@+id/btn1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.639"
tools:ignore="MissingConstraints"/>
</androidx.constraintlayout.widget.ConstraintLayout>
Java File:
package com.example.lab7;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void buttonclick(View view) {
String fname,lname;
EditText tx1 = findViewById(R.id.editTextTextPersonName2);
fname = String.valueOf(tx1.getText());
EditText tx2 = findViewById(R.id.editTextTextPersonName3);
lname = String.valueOf(tx2.getText());
Toast.makeText(getApplicationContext(),"Welcome "+fname+" "+lname,
Toast.LENGTH_LONG).show():}
Output:
Task No.2: Create a similar application which display five different toasts.
Coding:
XML File:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Toast 1"
android:onClick="ButtonOne"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf=”parent”
app:layout_constraintVertical_bias="0.253" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="432dp"
android:text="Toast 2"
android:onClick="ButtonTwo"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Toast 3"
android:onClick="ButtonThree"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button2"
app:layout_constraintVertical_bias="0.083" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Toast 4"
android:onClick="ButtonFour"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button3"
app:layout_constraintVertical_bias="0.118" />
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Toast 5"
android:onClick="ButtonFive"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button4"
app:layout_constraintVertical_bias="0.136"
tools:ignore="UsingOnClickInXml" />
</androidx.constraintlayout.widget.ConstraintLayout>
Java File:
package com.example.lab7;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void ButtonOne(View view) {
Toast.makeText(getApplicationContext(), "Toast 1 ",
Toast.LENGTH_LONG).show();
}
public void ButtonTwo(View view) {
Toast.makeText(getApplicationContext(), "Toast 2 ",
Toast.LENGTH_LONG).show();
}
public void ButtonThree(View view) {
Toast.makeText(getApplicationContext(), "Toast 3 ",
Toast.LENGTH_LONG).show();
}
public void ButtonFour(View view) {
Toast.makeText(getApplicationContext(), "Toast 4 ",
Toast.LENGTH_LONG).show();
}
public void ButtonFive(View view) {
Toast.makeText(getApplicationContext(), "Toast 5 ",
Toast.LENGTH_LONG).show();
}
}
Output:
Conclusion:
In this lab we learned about constructing a toast and how to implement it a virtual device. Main use of
toast is that in OS such as Android, customers require timely notifications without their work being
interrupted. We successfully completed the tasks given in the lab.