开发者

How to pass edit text data in form of string to next activity?

开发者 https://www.devze.com 2023-03-09 03:38 出处:网络
I am developing an android application in which i have taken two buttons and one edit text box. i want to pass the data of edit text box in from of string to the next activity on click of one of the b

I am developing an android application in which i have taken two buttons and one edit text box. i want to pass the data of edit text box in from of string to the next activity on click of one of the buttons, how can i pass the text to the next activity and receive that text in the new launched activity so could use the text in that.

my code for first activity is

EditText Urlis=(EditText)findViewById(R.id.entry);
final Button button = (Button) findViewById(R.id.ok);
final Intent i=new Intent(this , RSSReder.class);
final String choice=Urlis.getText().toString();

i.putExtra("key", choice);
button.setOnClickListener(new View.OnClickListener开发者_高级运维() {
    public void onClick(View v) {
        startActivity(i);
    }    
});  

and for called activity is

public class RSSReder extends Activity implements OnItemClickListener {

    public String RSSFEEDOFCHOICE;
    public final String tag = "RSSReader";
    private RSSFed feed = null;

    /** Called when the activity is first created. */

    public void onCreate(Bundle abc) {
        super.onCreate(abc);
        setContentView(R.layout.next1);

        Intent i = getIntent();
        RSSFEEDOFCHOICE =i.getStringExtra("key");

        // go get our feed!
        feed = getFeed(RSSFEEDOFCHOICE);

        // display UI
        UpdateDisplay();

    }
}

is there anything i need to change or remove.


After you have used setContentView(...) you need to reference your EditText and get the text such as...

EditText et = (EditText) findViewById(R.id.my_edit_text);
String theText = et.getText().toString();

To pass it to another Activity you use an Intent. Example...

Intent i = new Intent(this, MyNewActivity.class);
i.putExtra("text_label", theText);
startActivity(i);

In the new Activity (in onCreate()), you get the Intent and retrieve the String...

public class MyNewActivity extends Activity {

    String uriString;

    @Override
    protected void onCreate(...) {

        ...

        Intent i = getIntent();
        uriString = i.getStringExtra("text_label");

    }
}


Inside your Button's onClick Listener try the following,

String str=editText.getEditableText().toString();

Now use your intent,

Intent intent=new Intent(this,nextActivity.this);
intent.putExtra("editText_value",str);
startActivity(intent);


You can use intents for the purpose. Here's a tutorial for the same.

Also check How to pass the values from one activity to previous activity

Reading the contents of a String on Button click.

 EditText mText = (EditText)findViewById(R.id.edittext1);

Button mButton = (Button)findViewById(R.id.button1);

mButton.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                          String text = mText.getText.toString();
                          Intent intent = new Intent(this, Activity2.class);
                          intent.putExtra("key", text);
                          startActivity(intent);
                    }
                });


You have to use Intent to pass data to the next activity.

Intent intent = new Intent(CurrentActivity.this,NextActivity.class);
intent.putExtra("sampleString", "youstringdata");

In NextActivity:

String sampleData = getIntent().getExtras().getLong("sampleString");

0

精彩评论

暂无评论...
验证码 换一张
取 消