我刚开始学习Android应用程序开发。我正在研究网站http://developer.android.com/training/basics/firstapp/index.html
中的android教程中的示例将文本从MyActivity
页面发送到DiplayMessageActivity
,
String message = intent.getStringExtra(MyActivity.EXTRA_MESSAGE);
返回null作为值。
以下是我sendMessage()
的代码,
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText)findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra("EXTRA_MESSAGE",message);
String message1 = intent.getStringExtra(EXTRA_MESSAGE);
startActivity(intent);
}
在某种程度上,我可以阅读putExtra
和getStringExtra()
方法,但我无法解决此问题。我可能会错过很小的东西,但无法追查。
有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
像这样使用:
String message1 = intent.getStringExtra("EXTRA_MESSAGE");
您在EXTRA_MESSAGE
Constant
和getStringExtra
String
中使用putExtra
作为Constant
。因此要么使用Literal,要么使用{{1}} Name。
答案 1 :(得分:0)
如下所示发送信息
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText)findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra("EXTRA_MESSAGE",message);
startActivity(intent);
}
在DisplayMessageActivity.class中获取此消息,如下所示
Intent in=getIntent();
String message1 = in.getStringExtra("EXTRA_MESSAGE");
答案 2 :(得分:0)
而不是String message1 = intent.getStringExtra(EXTRA_MESSAGE);
使用String message1 = getIntent().getStringExtra(EXTRA_MESSAGE);
答案 3 :(得分:-1)
检查当你在意图中放入“EXTRA_MESSAGE”然后你使用不同的常量可能是MyActivity.EXTRA_MESSAGE具有不同的值