Android Programlama Ders 10 Action Bar Ekleme

featured

Bu makalemizde Action Bar yapısını anlamaya çalışacağız.
Eylem çubuğu (Action Bar) uygulamanızın Aktiviteleri için uygulayabileceğiniz en önemli tasarım unsurlardan biridir. Kullanıcılar için diğer aktiviteler arasındaki tutarlılığı sağlayarak, çok kullanıcı ara yüzü özellikleri sağlar.
Action Bar’ın ne için kullanıldığını kısaca şu iki resim anlatabileceğine inanıyorum:

Android_Programlama_Ders_10_Action_Bar_ekleme_01Action Bar yok

Android_Programlama_Ders_10_Action_Bar_ekleme_02Action Bar var

Action Bar için söylenecek cümleler şunlardır:

  • Kullanıcının uygulama içindeki yerini (o an ne yaptığını) gösterir. Diğer uygulamalardan ayıran en önemli unsurlardan biridir.
  • Öngörülebilir şekilde önemli eylemlere erişim sağlar (Örneğin arama işlemi, aktiviteler arası geçiş gibi, message dialog gibi)
  • Navigasyon ve view geçişleri için destek sağlar (sekmeler ve dropdown listler gibi)

Bu ve bundan sonraki birkaç makalede Action Bar üzerinde duracağız. Action Bar hakkında daha detaylı bilgi için  Action Bar klavuzuna bakabilirsiniz.

Action Bar Kurulumu

Not: Action Bar aslında Android sürümü olarak 3.0 (API 11) ve üstünü destekler ancak Android Support Library kullanarak Android 2.1 gibi sürümlerde de kullanılabilir.

En basit şekilde bir Action Bar solda aktivite için bir başlık ve uygulamanızın simgesini görüntüler. Hatta bu basit form kullanıcıların o an hangi activitede olduklarını anlamaları açısından kullanışlıdır.

Temel bir Action Bar oluşturmanın ilk adımı, uygulamanızın activitesinin bir tema kullanması ve temasında da action barın aktif olarak ayarlanmasıdır. Uygulamanızın SDK versiyonuna göre çeşitli ayarlamaları vardır. Bu makalede birkaç ayarlamadan bahsedeğiz (bu bahsedilen ayarlamaların çoğunu Android Studio bizim yerimize yapmaktadır):

Android 3.0 ve Üstü

Android 3.0 (API 11) ve üstü versiyonlarda Action Bar, Theme.Holo teması kullanan veya bundan türetilmiş temalarda bulunur. Ve bu tema targetSdkVersion veya minSdkVersion 11 veya üstü seçildiğinde varsayılan olarak seçilir.

Yani API 11 ve üstü sürümler için Action Bar eklemek istiyorsanız yapmanız gereken hiçbir şey yoktur.

Res/values/styles.xml dosyasında

<style name=”AppTheme” parent=”Theme.AppCompat.Light.NoActionBar”> bu değişikliği yaparsanız uygulamanızda action bar yer almaz

<style name=”AppTheme” parent=”Theme.AppCompat.Light.DarkActionBar”> bu değişikliği yaparsanız uygulamanızın teması açık (light) renk tema olur ve koyu renk action bar ayarlamış olursunuz.

Arasındaki farkı görmek açısından her iki durumuda deneyin ve uygulamanızı çalıştırın. Hatta başka temaları da deneyip uygulamanızda yarattığı değişiklikleri görün (Theme.AppCompat.Dialog değerini deneyip görmenizi öneririm).

Android 2.1 – Android 3.0 Arası

Android 2.1 üstü ve Android 3.0 altı için bir uygulama geliştiriyorsanız ve Action Bar kullanmak istiyorsanız projenize Android Support Library eklemeniz gerekmektedir.

Başlamadan önce SDK Tools kullanarak Android Support Library’i indirin ve kurun (Ekstralar içinde).  Kurulumdan sonra dosyalar Android SDK klasörünüz içine kaydedilecektir. Kütüphane dosyaları <sdk>/extras/android/support/ yolunda yer alır. Eklemek istediğiniz özelliklere göre ve seçtiğiniz Android sürümüne göre v4, v7, v13, v17 birini seçin biz uygulamamıza v7 ekleyeceğiz (aralarındaki farkı açıklamak için en az 5 makale daha yazılması gerekir ki şuan vakit eksikliğinden dolayı bunlara değinilmeyecek. Daha detaylı bilgi için tıklayabilirsiniz.)

SDK Manager kullanarak Android Support Repository (Ekstralar içinde) yüklü olduğundan emin olun

Projenizi Android Studio ile oluşturuyorsanız Android Studio aşağıda anlatılan ayarların hepsini sizin yerinize ayarlayacaktır. Ancak neler olduğunu anlamak açısından veya el ile ayar değişikliği yapabilmek açısından bu ayarların nasıl yapıldığına göz atmakta fayda var:

build.gradle dosyasını açın

Dependencies (bağımlılıklar) bölümüne kütüphane destek özelliğini ekleyin. Mesela MyApplication projesi için

dependencies {

compile “com.android.support:MyApplication-v7:18.0.+”
}

Kütüphane desteğini built.gradle içinde tanımlayın:

  1. Aktivitenizi ActionBarActivity içerecek şekilde değiştirin (extend – genişletin).

public class MainActivity extends ActionBarActivity { … }

  1. manifest/AndroidManifest.xml dosyasında Theme.AppCompat temalarından birini kullanmak için <application> elemanı içinde veya <activity> elemanı içinde bu temayı tanımlayın.

<activity android:theme=”@style/Theme.AppCompat.Light” … >

(Bu adımı Android Studio, styles.xml dosyasında AppTheme olarak tanımlayacak ve uygulama içerisinde AppTheme çağrıldığında aslında Theme.AppCompat.Light çağrılmış olacaktır.)

Artık Android2.1 veya üstü uygulamanız (Android 3.0 altı) Action Bar içeriyor.

Manifest içinde SDK versiyonunu ayarlayın:

<manifest … >
<uses-sdk android:minSdkVersion=”7″  android:targetSdkVersion=”18″ />

</manifest>

Sonraki makalemizde Action Button’lar ekleyeceğiz görüşmek üzere.

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir