Я хотел бы начать новый activity
для result
с startActvityForResult()
, но я бы хотел, чтобы кнопка back
работала как обычно в новом действии.
В настоящее время, когда я вызываю новый Activity
для результата, ничего не происходит, когда я нажимаю кнопку "Назад" в новом действии.
Я пробовал что-то вроде этого:
@Override
public void onBackPressed() {
setResult(0);
super.onBackPressed();
finish();
}
в новом Деятельности, но это не сработало. Тем не менее, ничего не происходит при нажатии кнопки назад.
Есть ли способ обойти это?
РЕДАКТИРОВАТЬ: Я мог бы, конечно, загрузить последний Activity
в onBackPressed()
(можно?), Но это выглядит как довольно дурацкий взлом.
Ответ Алекса Ади решает мою проблему, но я до сих пор не понимаю, почему onBackPressed()
не работает. Рабочий код теперь выглядит примерно так:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
setResult(1);
finish();
}
return super.onKeyDown(keyCode, event);
}
Я мог бы использовать объяснение.