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