これは、ほとんどの Android アプリで機能します。
一般に、各画面は Activity クラスのインスタンスによって構築されます。
プロジェクトのルートにある AndroidManifest.xml を確認します。次のようなインテント フィルタを含むアクティビティ宣言を探します。
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
これはアプリケーションへの「エントリ」ポイントであり、厳密には当てはまりませんが、このタスクには十分近いものです。実際、Android は Application クラスの内部シングルトン インスタンスを作成します。これは拡張される可能性がありますが、通常は拡張されません。"extends Application" または " : Application" を grep して確認します。
この場合、アクティビティ名と同じ名前のクラス ファイルを見つけます。SampleAppMainActivity.
このクラス ファイルを開き、onCreate() を見つけます。これは、アクティビティがインスタンス化されたときに Android が呼び出す最初のメソッドです。
setContentView() を見つけます。このように、 res/layout またはそのサブフォルダーにあるレイアウトを参照します。R.layout.sampleappmainlayout. ファイル自体は XML になります。このファイルは、アクティビティ画面で使用される UI 要素を定義します (他のレイアウトをマージするためのインクルードが含まれている場合があります)。
複数のアクティビティがある場合は、このアクティビティでクラスのインスタンスの作成を探しますIntent
。通常は、ボタンまたはメニューのクリック リスナーにアタッチされます。
ステップ2からの再帰:)
他の回答は、アダプターの詳細を扱います。それともそうではないでしょうか?Android はアダプターを使用してデータの取得を処理し、それらのデータを UI 要素にバインドします。「UI イベントに応答」しません。おそらく、MVC モデルのビュー コントローラーについてお尋ねですか?
幸運を。
PS クライアントが何を払っても、それだけでは十分ではありません。どうやってこのギグにたどり着いたかは推測できるが、まあ。ただええ。