Der Aufruf von startActivityForResult von Fragment ruft onActivityResult nicht auf

Ich habe einDialogActivity das heißt von aFragment für einen Brauch zeigenDialog mit zwei Bildtasten.

ImDialogActivity.onCreate

final Dialog dialog = new Dialog(this, R.style.DialogTheme);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.dialog_pause); 
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
dialog.show();

ImDialogActivity.onClick

        @Override
        public void onClick(View v) {
            Log.d(LOGTAG, "onClick CONTINUE");

            Intent resultData = new Intent();
            resultData.putExtra("TEST", "return data");
            setResult(666, resultData);
            dialog.cancel();
        }

In Fragment ruft dasstartActivityForResult:

Intent dialogActivityIntent = new Intent(getActivity(), DialogActivity.class);
startActivityForResult(dialogActivityIntent, 999);

ImActivity undFragment das ruftstartActivityForResult:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {

    super.onActivityResult(requestCode, resultCode, data);
}

Wenn ich auf die Schaltfläche klicke, wird nur der Dialog abgebrochen und die Hintergrundaktivität (Fragment) angezeigt.

Es gibt keinen Anruf zuonActivityResult, onResume, ... in demFragment oder derActivity enthält dieFragment.

Dinge, die ich versucht habe:

ImplementierenonActivityResult sowohl,Fragment undActivity das enthält meineFragment.

Sachen zu wissen:

Ich habe das Attribut gesetztnoHistory=true in jedemActivity Ich habe.

Wenn ich machefinish() imonClick dasActivity/Fragment das ruftDialogActivity wird ebenfalls geschlossen und die Anwendung kehrt zum vorherigen zurückActivity.

Dies könnte das Problem sein, das ich NICHT anrufefinish() ... aber wenn ich anrufefinish()Es geht zu einem anderenActivity, nicht derActivity das ruftstartActivityForResult.

Links die ich überprüft habe:

startActivityForResult () ruft nicht onActivityResult auf (int requestCode, int resultCode, Intent data)?

Kann nicht onActivityResult () android auslösen?

startActivityForResult scheint onActivityResult nicht aufzurufen

onActivityResult wurde nie aufgerufen

Android onActivityResult NIE aufgerufen

onActivityResult () wurde nicht aufgerufen, als Activity von Fragment gestartet wurde

Ich hoffe alles ist klar erklärt ^^.

Danke im Voraus.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage