Search code examples
androidandroid-activity

How to send string from one activity to another?


I have a string in activity2

String message = String.format(
"Current Location \n Longitude: %1$s \n Latitude: %2$s", lat, lng); 

I want to insert this string into text field in activity1. How can I do that?


Solution

  • You can use intents, which are messages sent between activities. In a intent you can put all sort of data, String, int, etc.

    In your case, in activity2, before going to activity1, you will store a String message this way :

    Intent intent = new Intent(activity2.this, activity1.class);
    intent.putExtra("message", message);
    startActivity(intent);
    

    In activity1, in onCreate(), you can get the String message by retrieving a Bundle (which contains all the messages sent by the calling activity) and call getString() on it :

    Bundle bundle = getIntent().getExtras();
    String message = bundle.getString("message");
    

    Then you can set the text in the TextView:

    TextView txtView = (TextView) findViewById(R.id.your_resource_textview);    
    txtView.setText(message);