Android-Aktivität (Aktivität)
Aktivität stellt einen einzelnen Bildschirm mit einer Benutzerschnittstelle, wie Java oder Fensterrahmen. Android-Aktivität ist eine Unterklasse ContextThemeWrapper Klasse.
Wenn Sie verwenden C, C ++ oder haben Java-Programmiersprache, sollten Sie wissen, dass diese Programme von der Funktion main () beginnt. Sehr ähnlich, Android-System initialisiert sein Programm ist () Rückruf durch den Beginn der Aktivitäten aufgerufen wird onCreate. Es gibt eine Callback-Methode eine Folge von Ereignissen zu initiieren, aber es gibt Möglichkeiten, um eine Abfolge von Ereignissen zu deaktivieren, wie in den folgenden Aktivitäten in der Erklärung Zyklus unten dargestellt:
Activity-Klasse definiert die folgenden Rückruf. Sie können nicht alle der Callback-Methode implementieren. Wenn ein sehr wichtiger jeder von ihnen zu verstehen, können diese sicherstellen, dass das Verhalten der Anwendung als Benutzer erwarten.
Rückruf | Beschreibung |
---|---|
onCreate () | Dies ist der erste Rückruf, wird der aktive Anruf zuerst erstellt |
onStart () | Diese Rückruf aufgerufen wird, wenn die Aktivität für den Benutzer sichtbar ist, |
onResume () | Dieser Callback wird aufgerufen, wenn der Benutzer die Anwendung startet und interaktive |
onPause () | Abgehängte Aktivitäten können nicht Benutzereingaben akzeptieren, können Sie keinen Code ausführen. Wann werden die laufenden Aktivitäten ausgesetzt werden, bei einer Veranstaltung durch den Aufruf wiederhergestellt werden |
OnStop () | Wird aufgerufen, wenn die Aktivität nicht sichtbar ist |
onDestroy () | Wenn ein Systemaufruf vor dem Ereignis zerstört |
onRestart () | Wird aufgerufen, wenn die Aktivität gestoppt wird, nachdem wieder öffnen |
Beispiele
Dieses Beispiel zeigt, Anroid Application Lifecycle-Aktivitäten durch einfaches Schritte. Befolgen Sie diese Schritte, um die Android-Anwendung zu ändern, die wir in der Hallo Welt Abschnitt Beispiele erstellt.
Schritt | Beschreibung |
---|---|
1 | Verwenden Sie Eclipse IDE eine Android-Anwendung und nennen Sie es Hello World zu schaffen, unter com.example.helloworld Verpackung. Hallo Welt Beispiel Abschnitt wie zuvor beschrieben. |
2 | Ändern Sie den folgenden Hauptaktivitäten Datei MainActivity.java. Halten Sie andere Teile unverändert. |
3 | Führen Sie die Anwendung mit dem Android-Emulator zu öffnen, zu verändern und die Ergebnisse der Anwendung überprüfen. |
Hier sind die wichtigsten Aktivitäten der Datei src / com.example.helloworld / MainActivity.java Inhalt geändert. Jedes davon enthält einen grundlegenden Lebenszyklus-Ansatz. Log.d () -Methode verwendet, um die Log-Informationen zu generieren:
package com.example.helloworld; import android.os.Bundle; import android.app.Activity; import android.util.Log; public class MainActivity extends Activity { String msg = "Android : "; /** 当活动第一次被创建时调用 */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d(msg, "The onCreate() event"); } /** 当活动即将可见时调用 */ @Override protected void onStart() { super.onStart(); Log.d(msg, "The onStart() event"); } /** 当活动可见时调用 */ @Override protected void onResume() { super.onResume(); Log.d(msg, "The onResume() event"); } /** 当其他活动获得焦点时调用 */ @Override protected void onPause() { super.onPause(); Log.d(msg, "The onPause() event"); } /** 当活动不再可见时调用 */ @Override protected void onStop() { super.onStop(); Log.d(msg, "The onStop() event"); } /** 当活动将被销毁时调用 */ @Override public void onDestroy() { super.onDestroy(); Log.d(msg, "The onDestroy() event"); } }
Aktivitätsklasse laden alle UI-Komponenten aus der res / Layout der XML-Datei des Projekts. Die folgende Anweisung wird UI-Komponente aus dem res / Layout / activity_main.xml Datei geladen:
setContentView(R.layout.activity_main);
Eine Anwendung kann eine oder mehrere Aktivitäten haben, ohne jede Einschränkung. Jede Aktivität für Anwendungen definiert, müssen die Prüfer im AndroidManifest.xml erklärt. Die Hauptaktivitäten der Anwendung müssen im Manifest deklariert werden, und die Absicht Filteretiketten MAIN Aktion und LAUNCHER Kategorie enthalten. Wie folgt:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.helloworld" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="22" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application> </manifest>
Ob MAIN LAUNCHER Kategorie Aktion oder nicht bei der Veranstaltung erklärt, dann das Symbol der Anwendung erscheint nicht in der Anwendungsliste auf dem Hauptbildschirm.
Lassen Sie uns von nur geändert "Hellow World!" Anwendung ausführen. Angenommen, Sie haben AVD erstellt, wenn das Einrichten der Umgebung. Führen Sie die Anwendung von Eclipse ein Projekt in der aktiven Datei zu öffnen, und klicken Sie auf Ausführen in der Symbolleiste Icon. Eclipse Installation von Anwendungen auf AVD und gestartet. Wenn alles gut geht, wird der Simulator den folgenden Bildschirm angezeigt werden, und Sie können die Log-Informationen in der Eclipse-IDE LogCat Fenster:
07-19 15:00:43.405: D/Android :(866): The onCreate() event 07-19 15:00:43.405: D/Android :(866): The onStart() event 07-19 15:00:43.415: D/Android :(866): The onResume() event
Lassen Sie uns Sie auf den roten Knopf auf der Android-Emulator , Es erzeugt die folgende Ereignismeldung in der Eclipse-IDE LogCat Fenster:
<code>07-19 15:01:10.995: D/Android :(866): The onPause() event 07-19 15:01:12.705: D/Android :(866): The onStop() event </code>
Lassen Sie uns noch einmal auf dem Android-Emulator auf der Menütaste klicken , Es erzeugt die folgende Ereignismeldung in der Eclipse-IDE LogCat Fenster:
<code>07-19 15:01:13.995: D/Android :(866): The onStart() event 07-19 15:01:14.705: D/Android :(866): The onResume() event </code>
Als nächstes wollen wir die Zurück-Taste auf dem Android-Emulator klicken , Es die folgende Ereignismeldung in der Eclipse-IDE LogCat Fenster erzeugt, wird die Android-Anwendung Aktivität während des gesamten Lebenszyklus abgeschlossen.
07-19 15:33:15.687: D/Android :(992): The onPause() event 07-19 15:33:15.525: D/Android :(992): The onStop() event 07-19 15:33:15.525: D/Android :(992): The onDestroy() event