2011-04-19 175 views
0

我的主要活动包含一个EditText和一个按钮。 我想发送写在EditText中的内容到按下按钮开始的下一个活动。在活动之间传递数据

在第一个活动我有这样的:

 Intent i = new Intent(firstActivity.this, secondActivity.class); 
     i.putExtra("myString", theEditText.getText()); 
     startActivity(i); 

到目前为止好。在第二个活动我用这个:

Bundle bundle = getIntent().getExtras(); 
    myRecivedString = bundle.getString("myString") 

但这里myRecivedString变成了空。

有什么建议吗?

+0

我会做的第一件事是Log.d(“yourTag”,theEditText.getText());'看看它是否有内容。 – Nanne 2011-04-19 08:51:02

回答

1

只需使用theEditText.getText().toString();。您可以获得用edittext编写的文本。

+0

这样做!非常感谢!我喜欢这个Stackoverflow。答案superquick! – 2011-04-19 08:58:37

2

请参阅EditText的getText()方法返回Editable类的对象。 所以如果你想传递包含在EditText中的字符串,你必须使用toString()。

在这里看到的例子:

thisEditText.getText().toString(); 

因此,在您第一个活动代码应该是这样的:

Intent i = new Intent(firstActivity.this, secondActivity.class); 
i.putExtra("myString", theEditText.getText().toString()); 
startActivity(i); 
+0

是的!这是问题所在。谢谢! – 2011-04-19 09:00:16

0

变化i.putExtra("myString", theEditText.getText());i.putExtra("myString", theEditText.getText().toString());