Creating Multiple Screen Applications in Android
This article shows how to create an android application to move from one activity to another. Below are the steps for Creating a Simple Android Application to move from one activity to another activity.
Step By Step Implementation
Step 1: Create a New Project in Android Studio
To create a new project in Android Studio please refer to How to Create/Start a New Project in Android Studio. The code for that has been given in both Java and Kotlin Programming Language for Android.
You will have XML and Activity Files, the path of both files is given below.
Step 2: Working with the ActivityOne Kotlin/Java/XML Files
Next, go to the activity_main.xml file, which represents the UI of the project. Below is the code for the activity_main.xml file. Comments are added inside the code to understand the code in more detail.
XML
<? xml version = "1.0" encoding = "utf-8" ?> < RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android" xmlns:tools = "http://schemas.android.com/tools" android:layout_width = "match_parent" android:layout_height = "match_parent" tools:context = ".Oneactivity" tools:layout_editor_absoluteY = "81dp" > < TextView android:id = "@+id/question1_id" android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginLeft = "30dp" android:layout_marginTop = "60dp" android:text = "" android:textColor = "@android:color/background_dark" android:textStyle = "bold" /> <!-- add button after click this we can goto another activity--> < Button android:id = "@+id/first_activity_button" android:layout_width = "150dp" android:layout_height = "40dp" android:layout_marginLeft = "90dp" android:layout_marginTop = "200dp" android:text = "Next" android:textColor = "@android:color/background_dark" android:textSize = "15sp" android:textStyle = "bold" /> </ RelativeLayout > |
Go to the MainActivity File and refer to the following code.
Below is the code for the MainActivity File. Comments are added inside the code to understand the code in more detail.
Java
import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class Oneactivity extends AppCompatActivity { // define the global variable TextView question1; // Add button Move to Activity Button next_Activity_button; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_oneactivity); // by ID we can use each component which id is assign in xml file // use findViewById() to get the Button next_Activity_button = (Button) findViewById(R.id.first_activity_button); question1 = (TextView) findViewById(R.id.question1_id); // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question1.setText( "Q1 - How to pass the data between activities in Android?\n" + "\n" + "Ans - Intent" ); // Add_button add clicklistener next_Activity_button.setOnClickListener(v -> { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called SecondActivity with the following code. Intent intent = new Intent(Oneactivity. this , SecondActivity. class ); // start the activity connect to the specified class startActivity(intent); }); } } |
Kotlin
import android.content.Intent import android.os.Bundle import android.widget.Button import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class Oneactivity : AppCompatActivity() { // define the global variable private lateinit var question1: TextView // Add button Move to Activity private lateinit var next_Activity_button: Button override fun onCreate(savedInstanceState: Bundle?) { super .onCreate(savedInstanceState) setContentView(R.layout.activity_oneactivity) // by ID we can use each component which id is assign in xml file // use findViewById() to get the Button next_Activity_button = findViewById(R.id.first_activity_button) question1 = findViewById(R.id.question1_id) // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question1.text = "Q1 - How to pass the data between activities in Android? Ans - Intent" .trimIndent() // Add_button add clicklistener next_Activity_button.setOnClickListener { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called SecondActivity with the following code. val intent = Intent( this , SecondActivity:: class .java) // start the activity connect to the specified class startActivity(intent) } } } |
Now we have to create another activity (SecondActivity) to move from one activity to another.
Create second activity and go to the android project > File >new > Activity > Empty Activity
Step 3: Working with the ActivityTwo Kotlin/Java/XML Files
Next, go to the activity_main.xml file, which represents the UI of the project. Below is the code for the activity_main.xml file. Comments are added inside the code to understand the code in more detail.
XML
<? xml version = "1.0" encoding = "utf-8" ?> < RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android" xmlns:tools = "http://schemas.android.com/tools" android:layout_width = "match_parent" android:layout_height = "match_parent" tools:context = ".SecondActivity" > < TextView android:id = "@+id/question2_id" android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginLeft = "30dp" android:layout_marginTop = "60dp" android:text = "" android:textColor = "@android:color/background_dark" android:textStyle = "bold" /> < Button android:id = "@+id/second_activity_next_button" android:layout_width = "90dp" android:layout_height = "40dp" android:layout_marginLeft = "200dp" android:layout_marginTop = "200dp" android:text = "Next" android:textColor = "@android:color/background_dark" android:textSize = "15sp" android:textStyle = "bold" /> < Button android:id = "@+id/second_activity_previous_button" android:layout_width = "110dp" android:layout_height = "40dp" android:layout_marginLeft = "50dp" android:layout_marginTop = "200dp" android:text = "previous" android:textColor = "@android:color/background_dark" android:textSize = "15sp" android:textStyle = "bold" /> </ RelativeLayout > |
Go to the MainActivity File and refer to the following code.
Below is the code for the MainActivity File. Comments are added inside the code to understand the code in more detail.
Java
import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class SecondActivity extends AppCompatActivity { // define the global variable TextView question2; // Add button Move to next Activity and previous Activity Button next_button, previous_button; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_second); // by ID we can use each component which id is assign in xml // file use findViewById() to get the both Button and textview next_button = (Button) findViewById(R.id.second_activity_next_button); previous_button = (Button) findViewById(R.id.second_activity_previous_button); question2 = (TextView) findViewById(R.id.question2_id); // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question2.setText( "Q 2 - What is ADB in android?\n" + "\n" + "Ans- Android Debug Bridge" ); // Add_button add clicklistener next_button.setOnClickListener(v -> { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called ThirdActivity with the following code. Intent intent = new Intent(SecondActivity. this , ThirdActivity. class ); // start the activity connect to the specified class startActivity(intent); }); // Add_button add clicklistener previous_button.setOnClickListener(v -> { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called oneActivity with the following code Intent intent = new Intent(SecondActivity. this , Oneactivity. class ); // start the activity connect to the specified class startActivity(intent); }); } } |
Kotlin
import android.content.Intent import android.os.Bundle import android.widget.Button import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class SecondActivity : AppCompatActivity() { // define the global variable private lateinit var question2: TextView // Add button Move to next Activity and previous Activity private lateinit var next_button: Button private lateinit var previous_button: Button override fun onCreate(savedInstanceState: Bundle?) { super .onCreate(savedInstanceState) setContentView(R.layout.activity_second) // by ID we can use each component which id is assign in xml // file use findViewById() to get the both Button and textview next_button = findViewById(R.id.second_activity_next_button) previous_button = findViewById(R.id.second_activity_previous_button) question2 = findViewById(R.id.question2_id) // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question2.text = "Q2 - What is ADB in android? Ans - Android Debug Bridge" .trimIndent() // Add_button add clicklistener next_button.setOnClickListener { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called ThirdActivity with the following code. val intent = Intent( this , ThirdActivity:: class .java) // start the activity connect to the specified class startActivity(intent) } // Add_button add clicklistener previous_button.setOnClickListener { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called oneActivity with the following code val intent = Intent( this , Oneactivity:: class .java) // start the activity connect to the specified class startActivity(intent) } } } |
Now, we have to create third activity same as the second activity, and the path of this file is also the same as another.
“Now, you can create many activities like this”. Here we add TextView for messages and one Button for goto previous activity. It will be shown below
Step 4: Working with the ActivityThree Kotlin/Java/XML Files
Next, go to the activity_main.xml file, which represents the UI of the project. Below is the code for the activity_main.xml file. Comments are added inside the code to understand the code in more detail.
XML
<? xml version = "1.0" encoding = "utf-8" ?> < RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android" xmlns:tools = "http://schemas.android.com/tools" android:layout_width = "match_parent" android:layout_height = "match_parent" tools:context = ".ThirdActivity" > < TextView android:id = "@+id/question3_id" android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginLeft = "30dp" android:layout_marginTop = "60dp" android:textColor = "@android:color/background_dark" android:textStyle = "bold" /> < Button android:id = "@+id/third_activity_previous_button" android:layout_width = "110dp" android:layout_height = "40dp" android:layout_marginLeft = "100dp" android:layout_marginTop = "200dp" android:text = "previous" android:textColor = "@android:color/background_dark" android:textSize = "15sp" android:textStyle = "bold" /> </ RelativeLayout > |
Go to the MainActivity File and refer to the following code.
Below is the code for the MainActivity File. Comments are added inside the code to understand the code in more detail.
Java
import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class ThirdActivity extends AppCompatActivity { // define the global variable TextView question3; // Add button Move previous activity Button previous_button; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_third); // by ID we can use each component which id is assign in xml // file use findViewById() to get the Button and textview. previous_button = (Button) findViewById(R.id.third_activity_previous_button); question3 = (TextView) findViewById(R.id.question3_id); // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question3.setText( "Q 3 - How to store heavy structured data in android?\n" + "\n" + "Ans- SQlite database" ); // Add_button add clicklistener previous_button.setOnClickListener(v -> { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called SecondActivity with the following code: Intent intent = new Intent(ThirdActivity. this , SecondActivity. class ); // start the activity connect to the specified class startActivity(intent); }); } } |
Kotlin
import android.content.Intent import android.os.Bundle import android.widget.Button import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class ThirdActivity : AppCompatActivity() { // define the global variable private lateinit var question3: TextView // Add button Move previous activity private lateinit var previous_button: Button override fun onCreate(savedInstanceState: Bundle?) { super .onCreate(savedInstanceState) setContentView(R.layout.activity_third) // by ID we can use each component which id is assign in xml // file use findViewById() to get the Button and textview. previous_button = findViewById(R.id.third_activity_previous_button) question3 = findViewById(R.id.question3_id) // In question1 get the TextView use by findViewById() // In TextView set question Answer for message question3.text = "Q3 - How to store heavy structured data in android? Ans - SQlite database " .trimIndent() // Add_button add clicklistener previous_button.setOnClickListener { // Intents are objects of the android.content.Intent type. Your code can send them to the Android system defining // the components you are targeting. Intent to start an activity called SecondActivity with the following code: val intent = Intent( this , SecondActivity:: class .java) // start the activity connect to the specified class startActivity(intent) } } } |
Contact Us