У меня есть действия A и B. Операция A вызывает B со следующими кодами:
Intent iSettings = new Intent(A.this, B.class);
startActivityForResult(iSettings, ACTIVITY_SAVE_PREF);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
startActivity(iSettings);
Операция B завершается и возвращается к действию A, нажав кнопку НАЗАД, которая имеет следующий код:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Bundle bundle = new Bundle();
bundle.putBooleanArray(KEY_PREFERENCES, value);
Intent mIntent = new Intent();
mIntent.putExtras(bundle);
setResult(RESULT_OK, mIntent);
finish();
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
return true;
}
return super.onKeyDown(keyCode, event);
}
Моя проблема в том, что действие B обновляется до своего первого состояния, которое было вызвано действием A в первый onKeyDown Back
.Занятие B заканчивается только на втором onKeyDown Back
и успешно возвращается к занятию A.
Может ли кто-нибудь помочь мне и сказать, если я что-то упустил, пожалуйста?Большое спасибо заранее!