Alt 24.Ekim.2017
  #1
abulbl - ait Kullanıcı Resmi (Avatar)
Site Kurucusu
Reklam
Eğer daha önceden C, C++ ya da Java programlama dilleriyle çalıştıysanız o zaman programınızın main() fonksiyonu içinden başladığını görmüşsünüzdür. Benzer şekilde, Android sistemi onCreate() çağırma metodu üzerinden Activity başlatma içindeki programla başlar. Bir Activity'yi çalıştıran geri çağırma metodunun sıralı dizisi vardır ve aşağıdaki Activity diyagramında gösterildiği gibi bir etkinliği parçalara bölen bir dizi geri arama yöntemi vardır.



Activity class'ı aşağıdaki çağrıları yani event'leri tanımlar. Bütün çağırma metotlarını uygulamanıza gerek yoktur. Ancak, İşin en önemli kısmı uygulamanız için hangi çağrıyı ya da tanımlamayı kullanmanız gerektiğini bilmektir.

Çağrılar ve Tanımları

1 onCreate()

Bu ilk çağrı metodudur ve Activity ilk oluşturulduğunda çağrılır.

2 onStart()

Bu çağrı yöntemi Activitynin kullanıcılar için elverişli hale geldiği zaman çağrılır

3 onResume()

Bu çağrı yöntemi kullanıcının uygulamayla etkileşime girmesiyle çağrılır.

4 onPause()

onPause Activitysi kullanıcı girişini almaz ve herhangi bir kodu yürütmez ve mevcut Activity duraklatıldığında önceki Activity çalışmaya devam ederken çağrılır.

5 onStop()

Bu Activity görünür olmadığı zaman çağrılır.

6 onDestroy()

Activity’nin sistem tarafından ortadan kaldırılmadan önce çağrılır. Yani Activity’yi yok etmek için kullanacağız.

7 onRestart()

Activity’yi durdurduktan sonra tekrar başlatmak için çağırırız.


Örnek

Bu örnek size Android uygulama activity’sinin döngüsünü gösterecek. Oluşturduğumuz Hello World örneğinin içindeki Android uygulamasını düzenlemek için aşağıdaki aşamaları takip edelim.

1 Android uygulaması oluşturmak için Android Studio’yu kullanacaksınız ve Hello World örneğinde açıklandığı gibi com.example.helloworld paketinin altında HelloWorld gibi isimlendirin.

2 Aşağıda açıklandığı gibi MainActivity.java main activity dosyasını düzenleyin. Dosyanın geri kalanına karışmayın.

3 Android emulatörünü başlatmak için uygulamayı çalıştırın ve uygulamada değişen sonuçlarını doğrulayın.

Aşağıda düzenlenen konu main activity dosyasının içeriği src/com.example.helloworld/MainActivity.java’dır. Bu dosya esas hayat döngüsü metotlarını içerir.

package com.example.helloworld;


Kod:
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");
   }
}

Bir activity class’ı projenin res/layout klasöründe bulunan XML dosyasını kullanarak bütün UI bileşenlerini yükler. Aşağıdaki ifade, UI bileşenlerini res / layout / activity_main.xml dosyasına yükler:

Kod:
setContentView(R.layout.activity_main);
Bir uygulama herhangi bir kısıtlama olmaksızın bir veya daha fazla etkinliğe sahip olabilir. Uygulamanız için tanımladığınız her etkinliği AndroidManifest.xml dosyanızda bildirilmeli ve uygulamanızın main activity’si, bildiride main activity ve Launcher kategorisini içeren bir <intent-filter> ile aşağıdaki gibi bildirilmelidir:

Kod:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.tutorialspoint7.myapplication">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Activity’lerinizin birinde Main Action veya Launcher kategorisi bildirilmemişse Uygulamanız Ana Ekranda görülmeyecektir.

Değiştirdiğimiz Hello World uygulamamızı çalıştıralım. Ortam kurulumu yaparken AVD’nizi oluşturduğunuzu varsayıyorum. Uygulamanızı Android’den çalıştırma için Eclipse Run’ı çalıştırın. Android Studio uygulamanızı AVD’nizi yükler ve başlatır ve eğer kurulumunuz ve uygulamanızda bir sorun yoksa uygulamanızı görürsünüz

Kod:
08-23 10:32:07.682 4480-4480/com.example.helloworld D/Android :: The onCreate() event
08-23 10:32:07.683 4480-4480/com.example.helloworld D/Android :: The onStart() event
08-23 10:32:07.685 4480-4480/com.example.helloworld D/Android :: The onResume() event


Android emulatöründeki kilit ekranı düğmesine tıklayalım ve Android studio’da LogCat penceresinde aşağıdaki olayları oluşturacak:

08-23 10:32:53.230 4480-4480/com.example.helloworld D/Android :: The onPause() event
08-23 10:32:53.294 4480-4480/com.example.helloworld D/Android :: The onStop() event

Android emülatöründe tekrar ekran kilidini açalım ve Android studio’da LogCat penceresinde aşağıdaki olayları oluşturacak:

Kod:
08-23 10:34:41.390 4480-4480/com.example.helloworld D/Android :: The onStart() event
08-23 10:34:41.392 4480-4480/com.example.helloworld D/Android :: The onResume() event
Etkinlik Yaşam Döngüsü tamamlıyor.

Sonra tekrar Android emülatöründeki Geri düğmesine tıklayalın ve Android stüdyosunda LogCat penceresinde aşağıdaki etkinlik iletileri oluşacaktır ve Bu bir Android için Yaşam Döngüsünü tamamlayan son aşamaydı.

Kod:
08-23 10:37:24.806 4480-4480/com.example.helloworld D/Android :: The onPause() event
08-23 10:37:25.668 4480-4480/com.example.helloworld D/Android :: The onStop() event
08-23 10:37:25.669 4480-4480/com.example.helloworld D/Android :: The onDestroy() event
Alt 08.Mart.2018
  #2
kenemene - ait Kullanıcı Resmi (Avatar)
Kullanıcı
C# ile çalıştım, ısındım. PHP ile çalıştım ısındım. MySQL'den nefret ediyordum, ısındım. Ama hala Android programa dolayısıyla JAVA'dan nefret ediyorum.

Güzel paylaşım için teşekkürler
Alt 08.Mart.2018
  #3
abulbl - ait Kullanıcı Resmi (Avatar)
Site Kurucusu
Evet Java biraz zor. Sevmek zor. Teşekkürler


« önceki Konuya git | sonraki Konuya git »

Şuan bu sayfada bulunan kişiler: 1 kişi (0 üye ve 1 ziyaretçi)
 
Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok
BB kodu Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Seçenekler
Stil



Tüm Zamanlar GMT +2 Olarak Ayarlanmış. Şuanki Zaman: 20:34.

Bize Yazin - Webmaster Forumu - Arşiv - Yukarı git
Powered by vBulletin™ Version 3.8.9 Beta 1
Copyright © 2018 vBulletin Solutions, Inc. All rights reserved.
Telefon zil sesleri | Prezeci.com