Thursday, 24 September 2015

Android - Activity

Sebuah kegiatan mewakili satu layar dengan user interface seperti jendela atau frame aktivitas Java.Android adalah subclass dari kelas ContextThemeWrapper.
Jika Anda telah bekerja dengan bahasa pemrograman C, C ++ atau Java maka Anda harus telah melihat bahwa program dimulai dari main () fungsi. Cara yang sangat mirip, sistem Android memulai programnya dengan dalam Kegiatan dimulai dengan panggilan OnCreate () metode callback. Ada urutan metode callback yang memulai suatu kegiatan dan urutan metode callback yang meruntuhkan suatu kegiatan seperti yang ditunjukkan di bawah ini diagram siklus hidup Activity: (image courtesy: android.com)



Kelas Kegiatan mendefinisikan panggilan berikut punggung yaitu peristiwa. Anda tidak perlu untuk mengimplementasikan semua metode callback. Namun, penting bahwa Anda memahami masing-masing dan menerapkan mereka yang memastikan aplikasi Anda berperilaku dengan cara yang pengguna harapkan.


OnCreate ()
ini adalah callback pertama dan disebut ketika aktivitas tersebut pertama kali diciptakan.

OnStart ()
callback ini disebut ketika aktivitas menjadi terlihat kepada pengguna.

onResume ()
ini disebut ketika pengguna mulai berinteraksi dengan aplikasi tersebut.

onPause ()
Kegiatan dijeda tidak menerima masukan pengguna dan tidak dapat mengeksekusi kode apapun dan disebut ketika aktivitas saat sedang berhenti dan aktivitas sebelumnya sedang dilanjutkan.

OnStop ()
callback ini disebut ketika aktivitas tidak lagi terlihat.

onDestroy ()
callback ini disebut sebelum kegiatan ini dihancurkan oleh sistem.

onRestart ()
callback ini disebut ketika aktivitas restart setelah menghentikan itu.

Contoh

Contoh ini akan membawa Anda melalui langkah-langkah sederhana untuk menunjukkan siklus hidup aplikasi aktivitas Android. Ikuti langkah-langkah berikut untuk mengubah aplikasi Android kita buat di Hello World Contoh bab:

Langkah Keterangan

1 Anda akan menggunakan IDE MARS untuk membuat aplikasi Android dan nama itu sebagai HelloWorld bawah com.example.helloworld paket seperti yang dijelaskan dalam bab Hello World Contoh.

2 Memodifikasi utama file aktivitas MainActivity.java seperti yang dijelaskan di bawah ini. Menjaga sisa file tidak berubah.

3 Jalankan aplikasi untuk meluncurkan Android emulator dan memverifikasi hasil dari perubahan yang dilakukan dalam aplikasi.
Berikut ini adalah isi dari file utama kegiatan src / com.example.helloworld / MainActivity.java dimodifikasi. File ini meliputi setiap metode siklus hidup yang mendasar. The Log.d () metode telah digunakan untuk menghasilkan pesan log:

package com.example.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;

public class MainActivity extends Activity {
   String msg = "Android : ";
   
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      Log.d(msg, "The onCreate() event");
   }

   /** Called when the activity is about to become visible. */
   @Override
   protected void onStart() {
      super.onStart();
      Log.d(msg, "The onStart() event");
   }

   /** Called when the activity has become visible. */
   @Override
   protected void onResume() {
      super.onResume();
      Log.d(msg, "The onResume() event");
   }

   /** Called when another activity is taking focus. */
   @Override
   protected void onPause() {
      super.onPause();
      Log.d(msg, "The onPause() event");
   }

   /** Called when the activity is no longer visible. */
   @Override
   protected void onStop() {
      super.onStop();
      Log.d(msg, "The onStop() event");
   }

   /** Called just before the activity is destroyed. */
   @Override
   public void onDestroy() {
      super.onDestroy();
      Log.d(msg, "The onDestroy() event");
   }
}

Sebuah beban kelas aktivitas semua komponen UI menggunakan file XML yang tersedia di res / layout folder proyek. Setelah beban pernyataan komponen UI dari res file layout / / activity_main.xml:

setContentView(R.layout.activity_main);

Sebuah aplikasi dapat memiliki satu atau lebih kegiatan tanpa batasan. Setiap kegiatan Anda menentukan untuk aplikasi Anda harus dideklarasikan dalam file AndroidManifest.xml dan kegiatan utama untuk aplikasi Anda harus dideklarasikan dalam manifest dengan <intent-filter> yang mencakup tindakan MAIN dan kategori Launcher sebagai berikut:

<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>

Jika salah tindakan MAIN atau kategori peluncur tidak dideklarasikan untuk salah satu kegiatan Anda, maka ikon aplikasi Anda tidak akan muncul dalam daftar layar Home untuk aplikasi.

Mari kita coba untuk menjalankan Hello kami dimodifikasi Dunia! aplikasi kita hanya dimodifikasi. Saya berasumsi bahwa Anda telah menciptakan AVD Anda saat melakukan pengaturan lingkungan. Untuk menjalankan aplikasi dari Eclipse, buka salah satu file kegiatan proyek Anda dan klik Run Run Eclipse Icon icon dari toolbar. Gerhana menginstal aplikasi pada AVD Anda dan mulai itu dan jika semuanya baik-baik saja dengan setup dan aplikasi, maka akan muncul jendela Emulator dan Anda akan melihat berikut pesan log di jendela LogCat di Eclipse IDE:



Mari kita mencoba untuk klik tombol merah Android Red Tombol pada emulator Android dan akan menghasilkan berikut pesan peristiwa di jendela LogCat di Eclipse IDE:

07-19 15:01:10.995: D/Android :(866): The onPause() event
07-19 15:01:12.705: D/Android :(866): The onStop() event

Mari kita lagi mencoba untuk klik tombol menu Android Tombol Menu pada emulator Android dan akan menghasilkan berikut pesan peristiwa di jendela LogCat di Eclipse IDE:

07-19 15:01:13.995: D/Android :(866): The onStart() event
07-19 15:01:14.705: D/Android :(866): The onResume() event

ext, mari kita lagi mencoba untuk mengklik tombol Back Android Tombol Kembali pada emulator Android dan akan menghasilkan berikut pesan peristiwa di jendela LogCat di Eclipse IDE dan ini melengkapi Siklus Kegiatan Hidup untuk Aplikasi Android.

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

No comments:

Post a Comment