結果のアクティビティを呼び出します。
private static final int CODE_LOGIN = 0;
private static final int CODE_DETAILS = 1;
private void callDetailsActivity() {
Intent switchToDetailsActivity = new Intent(getApplicationContext(), Details.class);
switchToDetailsActivity.putExtra(TAG_ID, details.get(TAG_ID));
startActivityForResult(switchToDetailsActivity, CODE_DETAILS);
}
Details.classで、前のアクティビティに戻るために呼び出します。
@Override
public void onBackPressed() {
setResult(RESULT_OK);
super.onBackPressed();
}
そして、私のonActivityResult()
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == CODE_LOGIN) {
// This is for my other Activity, where the "return" works
}
}
updateOffers();
}
しかし、以前のクラスに戻る前に、アプリケーションはエラー ログなしで閉じられます。ホームボタンを押して以前のアプリケーションに移動すると、アプリケーションに移動して以前のアクティビティに戻ることができますが、それは間違いなく本来の動作方法ではありません。
また、 を変更しないようにしたりonBackPressed()
、単純に に書き込もうとしたりfinish()
しましonBackPressed()
たが、何も機能しませんでした。
設定していませんandroid:noHistory="true"
私の他のアクティビティ(まったく同じコードを使用)では、完全に機能します(CODE_LOGIN)。
誰か助けてくれませんか?