Ich habe eine Klasse, die eine Fragensequenz behandelt. Es verlängert die Aktivität nicht. In der Klasse gibt es die Methode:onActivityResult wird nicht von finish() aufgerufen, wenn die übergeordnete Aktivität als Parameter an eine Absicht in einer Nicht-Aktivitätsklasse übergeben wird
public class QuizMaster {
public void startQuiz(Activity activity, Model model) {
//switch - case statement using model
Intent intent = new Intent(activity, QuestionTextActivity.class)
activity.startActivityForResult(intent, requestCode);
//other case statements with other intents
}
}
Wenn ich diese Methode von einer Arbeitstätigkeit rufen mit
mQuizMaster.startQuiz(this, mModel);
Und ich beende(), um das Kind Aktivität:
Intent returnIntent = new Intent();
returnIntent.putExtra(ARG_SELECTED_CHECKBOX, checkedBox);
setResult(RESULT_CODE, returnIntent);
finish();
es doesn Die
@Override
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) {
Log.d(LOG_TAG, "OnActivityResult called in SignDetailsActivity. Resultcode is: ");
}
des Benutzers nicht ausführen
Aber wenn ich die
Intent intent = new Intent(activity, QuestionTextActivity.class)
activity.startActivityForResult(intent, requestCode);
in der eigentlichen Mutteraktivitätsdatei ausführen, tut es die onActivityResult Methode ausführen.
Warum führt die untergeordnete Aktivität das onActivityResult in der übergeordneten Aktivität nicht aus, wenn es mit einer nicht aktiven Klasse gesendet wird? Wie behebe ich das?
Ich habe niemanden mit dem gleichen Problem mit der Ausführung neuer Intent() in einer Nicht-Aktivität-Klasse wie folgt gefunden. Wenn es jemanden gibt, habe ich nicht die richtigen Suchbegriffe verwendet und einige andere geben das gleiche ein wie ich und komme auf dieser Seite.
Das neue Intent nicht die Aktivität startet, muss es so etwas wie „startActivity“ oder „startActivityForResult“ im Code sein .. könnten Sie bitte Ihr Codebeispiel aktualisieren ? – Bmuig
Entschuldigung, ich habe vergessen, diese Codezeile zu der Frage hinzuzufügen. – Janneman96
Es ist ein Schalter mit 7 Fällen, die alle eine andere Kindklasse in die Absicht setzen. Nachdem eine ausgewählt wurde, werden immer 4 inent.putExtra und activity.startActivityForResult (intent, requestCode) ausgeführt. – Janneman96