アンドロイド学習-アクティビティ


📚 Activity


👀 Activityとは?

  • Androidアプリケーションの主要コンポーネントの1つを作成します.
  • アクティブデバイスは、ユーザと対話するエントリである.
  • インタラクションは、タッチ、クリックなどのイベントのトリガおよび処理、およびポップアップウィンドウを含む総合的な通信である.
  • 、すなわち、アクティブデバイスは、ユーザインタフェースを含むユーザと対話可能な画面である.
  • 構成
  • UI=オフセットレイアウト=レイアウトIDをパラメータLayoutとする.膨張=ビュー階層情報を受信し、ビュー(コンポーネント)
  • をインスタンス化する.
    Androidシステムは、
  • main()メソッドを使用してアプリケーションを実行するプログラミングモードとは異なり、ライフサイクルの特定のフェーズに固有のコールバックメソッドを呼び出すことでアプリケーションを実行します.
  • モバイルアプリケーション環境によれば、アプリケーションは常に同じアクティビティ(例えばMainActivity)から開始されるわけではない.
  • ユーザーとアプリケーションのインタラクションによって、アプリケーションが起動するアクティビティが異なるか、アクティビティ以外のコンポーネントによってアプリケーションが起動される可能性があります.
  • たとえば、
  • が電子メールアプリケーションの場合、ホームページ上でアプリケーションを実行すると、まず電子メールリストを表示するActivityが起動しますが、SNSアプリケーションを使用している場合に電子メールを書くためにSNSアプリケーションでこのメールアプリケーションを開く場合は、まず電子メール作成Activityを開始できます.
  • 👀 アクティビティ宣言

  • の新しいアクティビティが作成されている場合は、「宣言」に宣言して使用する必要があります.
  • の新しいアクティビティを宣言するには、インベントリファイルを開き、要素を要素のサブ要素として追加する必要があります.例:
  •  
          <manifest ... >
          <application ... >
              <activity android:name=".ExampleActivity" />
              ...
          </application ... >
          ...
        </manifest >

    👀 Activity LifeCycle


    👉 アクティブライフサイクルとは?


    前述したように、アクティビティにはライフサイクルがあり、Androidシステムは、ライフサイクルの特定のフェーズに固有のコールバックメソッドを呼び出すことでアプリケーションを実行します.
  • アプリケーションの実行中に電話がかかってきたら、アプリケーションはどうなりますか?アプリケーションは終了しますか?あるいはアプリを使うときに、ホームページをクリックして別のアプリを実行し、元のアプリに戻るとどうなりますか?
  • アプリケーションを使用すると、アクティブなステータスが常に変化し、ステータスの変化に応じてコールバックメソッドが呼び出されます.このコールバック・メソッドでは、ステータスに関連する操作を実行できます.

    👉 アクティブライフサイクルタイプ


  • アプリケーションを実行した後、onCreate()-onStart()-onResume()の順にすばやく実行します.
  • onCreate()-onDestoy()、onStart()-onStop()およびonResume()-onPause()です.
  • 👉 onCreate():UIの準備

  • アプリケーションの最初の実行時に呼び出されます.
  • アプリケーションを実行するには1回しか呼び出さないため、ここでは煩雑なタスクまたは1回しか必要としないタスクを実行します.
  • WidgetをViewオブジェクトに膨張して画面に表示
    Widgetには、
  • ユーザとのインタラクションを処理するためにリスナー(イベント応答処理オブジェクト)が設定される.
  • 外部のモデルデータを接続します.
  • 👉 onStart():UI変更の開始

  • マルチウィンドウモードでアプリケーションを選択する場合は
  • である.
  • アニメーションジョブ
  • データ更新タスク
  • 👉 onResume():現在のインタラクティブアクティビティ

  • アプリケーションがフロントに表示するステップ
  • ユーザが注目を集め、アプリケーションと正式に対話するステップ
  • あるイベントが発生し、アプリケーションはフォーカスがアプリケーションから離れるまでその状態にとどまる.
  • over view画面でActivityを選択すると
  • になります.
  • アクティビティは1つのみ「合計」ステータス
  • になります.
  • アプリケーションで頻繁に呼び出されるため、簡単なタスクはここで
  • を完了します.

    👉 onPause():フォーカスを失う

  • アクティビティがフォーカスを失うと、このステータスに変換されます.
  • は、代表的に、onResume()によって何らかのイベント(例えば、カメラプレビュー)が実行されてフォーカスが失われると、この状態に遷移する.
  • またはユーザーがマルチウィンドウモードを起動し、他のアプリケーションを使用する場合もこの状態に切り替わります.
  • 👉 onStop():UI変更の中止

  • ホームページボタンを押して他のアプリケーションを使用する場合:
  • onStopが呼び出されると、Activityは終了のターゲットとなります.
  • メソッドでは、アプリケーションが表示されない場合、アプリケーションは不要なリソースを解放または調整する必要があります.
  • 動画、データ更新停止、
  • データ格納

    👉 onDestory():アクティビティが消失

  • backボタンをクリックしてアプリケーションを終了すると、
  • overview画面からアプリケーションを削除する場合、
  • finsh()が呼び出され、アプリケーションが閉じると
  • が呼び出されます.

  • リリース
  • 以前にリリースされなかったすべてのリソース
  • 👉 別のアクティビティに移動すると、現在のアクティビティステータスは?


  • が他のアクティビティ(アクティビティB)に移動すると、現在のアクティビティ(アクティビティA)およびアクティビティBが呼び出すコールバック方法は以下の通りである.
  • onPause()(A) - onCreate()(B) - onStart()(B) - onResume()(B) - onStop()(A)
  • アクティブデバイスAが完全に閉じた後、アクティブデバイスBを作成するのではなく、オーバーラップが作成および終了することに注意してください.これは、アクティブAで使用されるデータがアクティブBで共有され、使用されることができることを意味し、したがって、データをよりよく使用するために作成および終了プロセスが重複する可能性がある.
  • 👀 Activityでの画面移動の管理


  • アクティブデバイスは、画面の移動をどのように管理しますか?正解はBackStack
  • Stackは、第1のアウトバウンド形式を有するデータ構造である.
  • に示すように、新しいアクティビティが積み重ねられるにつれて、戻るボタンを押すと、最後のアクティビティが消え、前の画面(前のアクティビティ)が再起動されます.
  • アプリケーションを実行すると、「Activity 1」がスタックに追加されます.
  • で2番目のアクティビティ2が実行されると、アクティビティ2はアクティビティ1に蓄積されます.(push)
  • ユーザーのアクティビティ3がキャンセルされると、スタックからポップアップされ、以前のアクティビティ2が上に移動します.
  • 👀 コメントサイト

  • 正式書類
  • アクティビティの概要
  • アクティブライフサイクル
  • 操作とバックグラウンド構造
  • ブログ
  • [アンドロイド]Activityって何?
  • [Android,Kotlin]新しいActivityを開始したときのLifecycle?Android Activity Lifecycleについて