Skip to main content

How to pass values from one activity to another activity in Kotlin

How to pass values from one activity to another activity in Kotlin

In previous article we have discussed on what is Intent and types of intent  check on this link if required  Intent and is type with example this will be continued article of previous 

activity_first.xml

In this activity_first.xml file we are creating an button which on click will send data from current activity to another specified activity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout      
  xmlns:android="http://schemas.android.com/apk/res/android"       
 xmlns:tools="http://schemas.android.com/tools"      
  xmlns:app="http://schemas.android.com/apk/res-auto"   
     android:layout_width="match_parent"     
   android:layout_height="match_parent"      
  tools:context=".FirstActivity"
android:orientation="vertical">

<Button android:layout_width="match_parent"    
    android:layout_height="wrap_content"     
   android:id="@+id/button"     
   android:text="Data Passing Example"/>

</LinearLayout>


FirstActivity.kt

In this FirstActivity.kt file we are defining button click and the activity which as
to be connected on click of the button along with it we are passing sample data of Name,Language
and Channel data into the specified activity
package com.example.kotlinsampleproject

import android.content.Intent
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_first.*

class FirstActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_first)

        button.setOnClickListener {        
   intent = Intent(this, SecondActivity::class.java)
            intent.putExtra("Name","Sushmitha")
            intent.putExtra("Language","Kotlin")
            intent.putExtra("Channel", "SDK Book")
            startActivity(intent)
        }    }
}


SecondActivity.kt

In this SecondActivity.kt we are receving the data sent by FirstActivity.kt  using key name specified in the bundle

package com.example.kotlinsampleproject

import android.content.Intent
import android.net.Uri
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.widget.Toast

class SecondActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_second)

         val bundle:Bundle = intent.extras    
        var name =bundle.get("Name")
        var lang= bundle.get("Language")
        var channel= bundle.get("Channel")

        Toast.makeText(this,"$name $lang $channel",Toast.LENGTH_LONG).show();

    }
}





Happy Reading 😊
Thank You



Sushmitha N Hi there ! Im a experienced android developer with 4years of revelant exprience.My Skills include Android,Core Java ,Oops and Kotlin. Youtube Channel : SDK Book



Comments

Popular posts from this blog

Android Interview Questions

Android Interview Questions Which was the first mobile brand with Android Application?                           Answer :   First Mobile brand with Android Application was HTC. What is the current version of android and its API ?   Answer: Current version of android  is “Pie” (as per Nov 2018) and its API level 28. Life cycle of Activity ? Answer: OnCreate() - This method is called when the activity is created . It is called only once in activity lifecycle. OnStart() - This method is called when the activity is getting started , no user interactions will be done at this stage,and this method will be called several times in activity life cycle depending upon the user navigation.(Loads UI) OnResume()- On this method call user can interact with the activity and perform actions like click. OnPause()- W...
Find the biggest difference between any two numbers in array? Approach: Assume array of integer arr = [5,9,66,8,37]  Two calculate biggest difference between two numbers logic is largest number - smallest number . By arranging the array in ascending order we get the first element which is smallest and the last element which is largest. Now the array look like integer arr =[5,8,9,37,66] Here the solution is last element (largest number)- first element(smallest number) i.e; 66-5= 61 Implementing in Java /* Read input from STDIN. Print your output to STDOUT*/ import java.io.*; import java.util.*; public class BiggestDifference{   public static void main(String args[] ) throws Exception { //Takes user input Scanner sc = new Scanner(System.in); int n = sc.nextInt(); //create an array depending upon the number of user inputs int[] array = new int[n]; //insert user input elements into the array for(int i = 0; i < n; i++) ...
Count how many numbers are negative in an array? Approach: Assume array of integer arr = [5,-9,66,-8,37] As  we know a negative number is a real number less than zero We are going to apply the same logic here , and check the number of negative numbers in the array. Expected output is : 2 ,since there are 2 negative numbers among the set of numbers Implementing in Java /* Read input from STDIN. Print your output to STDOUT*/ import java.io.*; import java.util.*; public class CountNegativeNumbers{   public static void main(String args[] ) throws Exception { //Write code here Scanner scan = new Scanner(System.in); int n = scan.nextInt();    // takes user input int a[] = new int[n];   // creates array depending on the user input int count=0;              //count variable which is zero initially for(...