Androidアプリ開発逆引き大全 500の極意

アプリを動かすJavaのオブジェクト - Tips287 「SingleTask」なアクティビティを理解する

登録タグ
Icon comment count 0
Icon stock count 0

4-2インテントとタスクTips287 「SingleTask」なアクティビティを理解する

対応Ver:全て

Level3

Answer同じアクティビティが呼ばれると、タスクそのものが以前に戻る

アクティビティの起動モード「SingleTask」では、「SingleTop」同様、アクティビティは自分自身を呼び出せません。

加えて、同じアクティビティが新たに呼ばれたとき、タスクそのものが「最初にインスタンスが作成されたときに戻る」ことによって、2度目の画面を実現します。

Tips285のテストアプリにおいて、アクティビティ3だけが「Single Task」とします。

「M-1-2-3-4-3」と「3」が2番目に呼ばれると、タスク全体が「M-1-2-3」の時点に戻ります。

そのため、「M-1-2-3-4-3」と呼び出したあとに「戻る」ボタンを押すと「3-2-1-M」のように戻ります。

「M-1-2-3-4-3-2」と読んでいった場合、実はタスクは「M-1-2-3」まで戻ってから、「2」が新たに作成されたことになります。すなわちタスクは「M-1-2-3-2」の経路になりますので、「戻る」ボタンでは「2-3-2-1-M」の経路になります。

出典情報

Medium

Androidアプリ開発逆引き大全 500の極意

  • 著者: 清水 美樹

コメント

    コメントはありません