android activity関連

2999 ワード

Activityは、インタフェースを持つユーザーが対話できるコンポーネントです.
アプリケーションは一般的に複数のactivityから構成され、それらの間には緩やかな接続がある.通常、アプリケーションが起動した後に最初に表示されるプライマリactivityがあります.1つのactivityで起動できます
もう一つは異なる行為を実現する.システムは1つのスタックでactivityを管理し、1つのactivityが起動するとスタックの上部に配置され、システムの焦点が得られ、以前は停止していた.スタックの後進先出原則を遵守し、システムフォーカスのactivityを取得して破棄すると、前のactivityが回復します.Activityの状態が変化すると、システムはコールバック関数を呼び出して応答します.
I activityの作成
activityのサブクラスを作成し、activityのコールバック関数を書き換える必要があります.activityの状態が変化すると、対応するコールバック関数が呼び出されます.次は2つの最も重要な関数です
onCreate()この関数を実装する必要があります.しかし、activityを作成すると、システムはこの関数を呼び出し、activityコンポーネントを初期化します.最も重要なのは、呼び出さなければならないことです.
setContentView()はactivityのユーザーインタフェースのレイアウトを定義します.
onPause()このactivityがユーザーの焦点を失うと、システムはこの関数を呼び出します.(このactivityが破棄されたわけではない)
 
ヒューマンマシンインタフェースの実現
ビュー構造はactivityのヒューマン・ユーザー・インタフェースを提供し、彼らはViewクラスに派生し、各viewは矩形領域を制御し、ユーザーの操作に応答する.
widget提供button,checkbox,image
Layoutは構築されたレイアウトを提供します
 
II activityを起動する
startActivity()によって別のactivityを起動し、
class名を指定したactivityを起動できます.起動するactivityのclass名がdemoActivityです.
Intent intent = new Intent(this, demoActivity.class);startActivity(intent);
もちろん、intent(ある動作を記述する暗黙的intent)に次のactivityに追加の情報を持たせることもできます.
Intent intent = new Intent(Intent.ACTION_SEND);intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);startActivity(intent);
 
recipientArrayはあなたが転送したいデータです.
 
III結果を返すactivityの起動
startActivity()の代わりにstartActivity()を使用してactivityを起動します.次のactivityから返される結果を受信するために
元のactivityでonActivity Result()コールバック関数を実装する必要があります.activityが完了すると、結果を携帯するintentを介してonActivity Result()に戻ります.
III閉activity
finish()を呼び出してactivityを閉じます.前に起動する別のactivityを閉じるfinishActivity()を呼び出すこともできる.
一般的に、これらの関数で指定したactivityを閉じるべきではありません.システムはactivityのライフサイクルを管理します.
 
Activityライフサイクルの管理
コールバック関数を実装してactivityのライフサイクルを管理することは、堅牢なアプリケーションの開発に重要です.他のactivity、タスク、スタックに直接関係します.
Activityは主に3つの状態に存在します.
1.resumed activityはフロントでシステムフォーカス(runningに相当)を取得する.
2.pausedの別のactivityはフロントでシステムフォーカスを取得するが、このactivityは表示される.この状態は主にこの場合に
トップの表示activityは全画面を上書きせず、pausedのactivityが表示されます.メモリが低いと殺されます
3.stoppedというactivityは完全に別のactivityに覆われており、このstoppedのactivityはメモリに捨てられています.
ウィンドウマネージャは表示されず、付属していません.
Activityのライフサイクル
1.完全なライフサイクル、呼び出しonCreate()およびonDestroy() 2. , onStart()およびonStop() 3. , onResume()  onPause()
 
 
onPause()、onStop()、およびonDestroy  
 
V activity の
...
...
...
...
...
 
VI activity
1つのactivityから のactivityを すると、それらは の があります.
activityAがactivityBの を するには、 の に います.
1.activityAのonPause()
2.activityBのonCreate()、onStart()およびonResumed()
3.ifactivityAはまったく えません.activityAはonStop()を び す があります.