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 version = "1.0" encoding = "utf-8" ?>
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.
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);
});
}
} |
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 version = "1.0" encoding = "utf-8" ?>
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.
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);
});
}
} |
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 version = "1.0" encoding = "utf-8" ?>
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.
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);
});
}
} |
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)
}
}
} |