我已经创建了所有我自己的第一个Android应用程序。用户必须单击下一个将打开新活动的活动启动按钮。用户将在那里键入文本,文本将返回到上一个屏幕。该文本将在textview上更新。最初,textview将显示“No text entered message”,并且在从活动更新后,它将是输入的新文本。 我遇到的问题是文本框消失了,从新活动更新时没有显示任何消息。
这是我的主要活动
public static String new_message;
final int REQUEST_CODE = 1;
public void new_activity(View view){
Intent intent = new Intent(this, new_activity.class);
startActivityForResult(intent, REQUEST_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK && data!= null){
TextView set_message = (TextView) findViewById(R.id.entered_text);
set_message.setText(new_message);
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void show_text(View view){
TextView message;
message = (TextView) findViewById(R.id.showText);
message.setText("I have been cliked now!!");
}
这是我的新活动java文件。
public void return_previous(View view){
Intent resultIntent = new Intent();
EditText editTextBox = (EditText) findViewById(R.id.text_entered);
String text_entered = editTextBox.getText().toString();
resultIntent.putExtra(MainActivity.new_message,text_entered);
setResult(RESULT_OK, resultIntent);
this.finish();
}
答案 0 :(得分:1)
编辑onActivityResult以匹配此
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK && data!= null){
TextView set_message = (TextView) findViewById(R.id.entered_text);
//set_message.setText(new_message);
set_message.setText(data.getStringExtra(new_message));
}
}