Bu uygulamamızda activityler oluşturup activityler arasında yönlendirme yapacağız.

Yeni bir uygulama açtığımızda otomatik olarak bir activity oluşturuyoruz. Onun haricinde yeni activityler oluşturmak istediğimizde neler yapacağız?

Yeni bir activity oluşturduğumuzda androidmanifest dosyasında onu belirtmeliyiz ve java ve xml layout (görünüm) dosyalarını oluşturmalıyız.

Uygulamamızdaki Androidmanifest.xml dosyasını açalım ve alt bölümden Androidmanifest.xmle tıklayalım.

Burda main için olan kodları kopyalayıp alt bölümüne yapıştıralım. Kopyalayacağımız yerin etiketi <activity ile başlayıp </activity> ile bitiyor... Yapıştırdığımız yerdeki yazılardan sadece ac2 yazan yerler ve DEFAULT yazan yer değiştirilecek.

<activity android:name="com.ac2">

<intent-filter>

<action android:name="android.intent.action.ac2"/>

<category android:name="android.intent.category.DEFAULT"/>

</intent-filter>

 </activity>

Application etiketleri içerisinde tanımlanmış bir activity.

Şimdi java dosyasını ekleyelim.

Bu görselin özgün dosyasına şu anda erişilemiyor.

Src içerisindeki klasöre sağ tıklayıp new-classı seçiyoruz.

Bu görselin özgün dosyasına şu anda erişilemiyor.

Classın içerisini resimdeki gibi düzenliyoruz. ac2 classını bir üst sınıf olan Activity'den extend ettik(kopyasını oluşturduk diyebiliriz).  Burda R.layout.ac2layout ile xml görüntü dosyamızın hangisi olduğunu bildiriyoruz. Bildirdikten sonra oncreate metodunu Source menüsündeki override/implement metods ile de oluşturabiliriz. setcontentview ile de görünümümüzü belirttik. Henüz xml dosyasını oluşturmadığımız için altını çizdi.

Bu görselin özgün dosyasına şu anda erişilemiyor.

Layout klasörüne sağ tıklayıp New-Android XML file a tıklıyoruz. Yeni bir layout ekliyoruz...

Bu görselin özgün dosyasına şu anda erişilemiyor.
Bu görselin özgün dosyasına şu anda erişilemiyor.

Layoutumuz ve kaynak dosyaları üstte gözüküyor.

Tasarımı hazır. Main layoutumuza bir button ekleyip butona tıklandığında ikinci activitye gitmesini sağlayalım. (butonun adını git yaptım)

Kodlarımız;

package com;

import com.arif.R;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

public class activityekleActivity extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        Button gitbuton=(Button)findViewById(R.id.git);

        gitbuton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {

                // TODO Auto-generated method stub

                startActivity(new Intent("android.intent.action.ac2"));

                //yönlendirmeyi yapan kod. intent ile activityler arası yönlendirme, internet sitesini açma vs. Yapılabiliyor.

            }

        });

    }

}


Bu görselin özgün dosyasına şu anda erişilemiyor.

Tıkladıktan sonra...

Bu görselin özgün dosyasına şu anda erişilemiyor.

Geri dönmek için de;

Intent intent = new Intent(ac2.this, activityekleActivity.class);

startActivity(intent);

kodu kullanılabilir.

Kolay gelsin.

p

Kaynaklar