startActivityForResultについて少しお読みください。
あなたはまた、別のアクティビティを開始し、あなたのMainActivityがonActivityResult()コールバックでそれを受け取るback.Then結果を受け取ることができるクイック概要
。その後
あなたは新しいクラスの意図を設定してから開始されたアクティビティを特定するための固有のコードでstartActivityForResult
を呼び出す)
private void startActivityA() {
Intent intent = new Intent(this, ActivityA.class);
startActivityForResult(intent, ACTIVITY_A_CODE);
}
private void startActivityB() {
Intent intent = new Intent(this, ActivityB.class);
startActivityForResult(intent, ACTIVITY_B_CODE);
}
private void startActivityC() {
Intent intent = new Intent(this, ActivityC.class);
startActivityForResult(intent, ACTIVITY_C_CODE);
}
:あなたの「MainActivity」あなたはこのようなものを持っているでしょうに
あなたのMainActivityでonActivityResult
メソッドを実装します。これは、以下のように開始されたアクティビティ(* _CODE)をチェックし、結果がOKかどうかをチェックします。あなたはAndroidのドキュメントからstartActivityForResultについてをより詳細に読んでくださいsetResult()
で、あなたのcriteriasに基づいて、結果を設定する必要があり、あなたの新しい活動において
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// Check which request we're responding to
if (requestCode == ACTIVITY_A_CODE) {
// if the result of the activity was good, then:
if (resultCode == RESULT_OK) {
// score++;
} else {
// score--;
}
}
else if (requestCode == ACTIVITY_B_CODE) {
// ....
}
}
。
基本的にダミーのアクティビティです。これは、私がそれをどのように描いているのかとほとんど同じです。私はあまりにも多くの時間を費やす前に確認したかっただけです。 答えをありがとう! –