25 Temmuz 2013 Perşembe

Android 7 (Ekrana Tema Uygulama)




                Bu basit uygulamamda ana ekranımda about isimli bir butonum var ve ben butona bastığımda about için hazırladığım bilgi ekranının açılmasını istiyorum. Amacım bunu sağlamak için tema nasıl değiştirilir bunu öğrenmek. Uygulamam bittiğinde about butonuna basıldığında aşağıdaki gibi bir görüntü elde ediyorum!




                En bastan  başlayacak olursak yeni boş bir android projesi oluşturuyorum. Açılan ana ekranıma butonu sürükleyip bırakıyorum. Bu butona isim eklemek için xml kodundaki text kısmına

android:text="@string/about"

yazıyorum ve hemen ardından values-->string.xml i açıp about isminde bir String ekliyorum. Values kısmına da About yazıyorum. Aşağıdaki gibi ana ekran görüntümü hazırladım.




                İkinci ekranımı eklemek için layout klasörüne sağ tik new-->other-->android xml file yolu ile ekran2 isminde yeni bir xml dosyası oluşturdum. “ekran2.xml” ekranıma textview sürükleyip bırakıyorum. Textview in yazısı için bilgi isimli yeni bir String ifade oluşturuyorum ve textxview in kod kısmına aşağıdaki gibi ekliyorum

android:text="@string/bilgi

         Buradaki işlemde tamam. Şimdi oluşturduğumuz ekran2.xml için bir de Java sınıfı oluşturuyorum. Bunun için src klasörüne sağ tık ile new-->class yolunu takip ediyorum. Eklediğim sınıfa rastgele bir isim verebilirim. Ben “ekran” isimli bir sınıf oluşturdum.

                Bu oluşturduğum ekran.java dosyasını Activity i extends ediyorum. Sonra Activity nin  Override metodu olan onCreate() metodunu ekliyorum , onCreate() metodu içerisine 

setContentView(R.layout.ekran2);

kodunu ekliyorum. “ekran.java” kodunda yapacaklarım bu kadar , kodun genel görünümü aşağıdaki gibi oluyor

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

public class ekran extends Activity{

            @Override
            protected void onCreate(Bundle savedInstanceState) {
                        // TODO Auto-generated method stub
                        super.onCreate(savedInstanceState);
                        setContentView(R.layout.ekran2);
            }
}

         Sırada ana ekranımdaki eklediğim butona listener ekleyerek basıldığında yeni ekranımın açılmasını sağlamak. Bunun içinde src klasörü altında bulunan MainActivity.java dosyamı açıyorum. Listener ekleyeceğim için öncelikle OnClickListener i implements ediyorum. OnClickListener in Override metodu olan onClick(View v) metodunu ekliyorum. Daha sonra butonu tanımlıyorum , listener ekliyorum. “onClick()” metodu içerisine de butona basıldığında diğer ekranın açılması için Intent sınıfını import ediyorum ve aşağıdaki kodu ekliyorum

Intent i = new Intent(this,ekran.class);
startActivity(i);

MainActivity.java kodumun son hali aşağıdaki gibi oldu

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        Button buton =(Button)findViewById(R.id.button1);
        buton.setOnClickListener(this);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }


            @Override
            public void onClick(View v) {
                        // TODO Auto-generated method stub
                        Intent i = new Intent(this,ekran.class);
                        startActivity(i);
            }
}


         “MainActivity.java” daki düzenleme işlemlerimde tamam. Şimdi de sonradan eklediğim ekran2.xml in uygulama da çalışabilmesi için AndoridManifest.xml dosyasını çift tıklayarak açıyorum. Açtıktan sonra kod kısmına aşağıdaki gibi kodumu ekliyorum

<activity android:name="com.example.uygulama4.ekran"
          android:theme="@android:style/Theme.Dialog"></activity>

         İşte temayı burada belirtiyoruz. Ben açılan ekranımın diyalog penceresi seklinde olmasını istediğim için Theme.Dialog seklinde seçtim. Seçtim diyorum çünkü birden çok seçenek var. Böylece penceremiz için tema uygulamış olduk.

@android:style/Theme yazdıktan sonra “Ctrl + Space” ile seçenekleri görebiliriz.

                Uygulamamız hazır run ederek deneyebiliriz.

Uygulamayı indirmek isteyenler için kodu diskten paylaşıyorum;

İndir



Ekran Görüntüleri





0 yorum:

Yorum Gönder