何requestCode
です例えば、私はこれを使用〜のためです。だから、ACTIVITY1とACTIVITY2があなたのActivity
で定数である。この
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
switch(requestCode)
case ACTIVITY1:
if(resultCode == RESULT_OK)
Toast.makeText(getApplicationContext(), "Activity 1 returned OK", Toast.LENGTH_LONG).show();
break;
case ACTIVITY2:
if(resultCode == RESULT_OK)
Toast.makeText(getApplicationContext(), "Activity 2 returned OK", Toast.LENGTH_LONG).show();
break;
}
のようなセットアップを持っていると思います。あなたがそうのようにそれらを呼びたい:
startActivityForResult(activity1Intent, ACTIVITY1);
と
startActivityForResult(activity2Intent, ACTIVITY2);
異なる結果をrequestcode swicth使用することができます。実際、 'Toast'は到達不可能なコードです。なぜなら、' resultCode'が 'RESULT_OK'と等しい場合にのみスイッチを入力するからです。 'requestCode'には常に外側(単一の)' switch'を使用し、異なる 'resultCodes'に対してはすべての' case'チェックの中で使うべきです。数行のコードを保存するための他の設計は、最終的にはバグの原因になります。 – thelawnmowerman