Активность не обновляет предыдущую активность TextView

Я сам создал первое приложение для Android. Пользователь должен нажать кнопку "Следующая активность началась", которая откроет новую деятельность. Пользователь напечатает там текст, и текст будет возвращен на предыдущий экран. Этот текст будет обновлен при просмотре текста. Первоначально текстовое представление будет иметь сообщение "Текст не введен", а после обновления из действия будет введен новый текст. У меня проблема с тем, что текстовое поле исчезает, и сообщение не отображается при обновлении от нового действия.

Вот моя основная деятельность

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();
}

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));
    }

}
Другие вопросы по тегам