1

ACITIVTYA、ACITIVTYB、ACITIVTYC というアクティビティがあります。

ACITIVTYB および ACITIVTYC は ACTIVITYA を拡張します

親アクティビティである ACITIVTYA で、ACTIVITYB をリロードしたいと考えています。私は次のコードを使用しました

finishActivity(1000);
Intent intent = new Intent(ACITIVTYB.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivityForResult(intent,1000);

しかし、finishActivity(1000); 同じ ACTIVITYB が画面にある場合は機能しません。

別のアクティビティから機能します。つまり、ACTIVITYC が画面に表示されているときに、ACTIVITYB をリロードできます。しかし、ACTIVITYB が画面に表示されている場合、同じ ACTIVITYB をリロードできません。

4

3 に答える 3

10

finishActivity現在のアクティビティから別のアクティビティを閉じるために使用されます。詳細については、公式ドキュメントを確認できます: finishActivity したがって、現在のfinish()代わりに使用する必要がありますfinishActivity()Activity

于 2013-09-16T06:32:26.510 に答える
2

以下を使用できます。

getActivity().setResult(350, null);
getActivity().finish();
于 2016-09-13T18:55:51.050 に答える
0

現在のアクティビティを終了したい場合は、アクティビティスタックからそれを削除する必要があります befire 使用する必要がある次の画面に移動します

youractivity.this.finish();

于 2013-09-16T07:03:37.873 に答える