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