JavaveAndroidHakkında

Android Yazılım geliştirme konusunda sürekli bilgi akışı sağlayan, soru-cevaplar ile öğrenme gerçekleştirmeyi amaçlayan bir eğitim süreci planlıyoruz.

Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

14 Şubat 2015 Cumartesi

Android - Menu Kavramı Menü Grubu Oluşturmak - 8

22:35

Menü Grubu Oluşturmak

    Menü grubu ifadesi, belirli davranışları paylaşan menü itemlerinden oluşan grupları ifade eder. Gruop ile ;


  • setGroupVisible() metoduyla tüm itemleri Show(göster) veya Hide(gizle) edebilirsiniz.
  • setGroupEnabled() metoduyla tüm itemleri aktif veya pasif edebilirsiniz.
  • setGroupCheckable() metoduyla tüm itemlerin seçilip seçilmeyeceğine karar verebilirsiniz.

    Gruplama işlemini menu resource içinde <item> elementi altında <group> etiketi altında veya add() metodu ile grup ID tanımlayarak kodlayabilirsiniz. 

Aşağıda menü grubu içeren menu resource örneğini görebilirsiniz.


Örnek:

<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">

    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100" app:showAsAction="never"/>


        <item android:id="@+id/menu_save"
            android:icon="@drawable/menu_save"
            android:title="@string/menu_save" />
        <!-- menu group -->
        <group android:id="@+id/group_delete">
            <item android:id="@+id/menu_archive"
                android:title="@string/menu_archive" />
            <item android:id="@+id/menu_delete"
                android:title="@string/menu_delete" />
        </group>

</menu>


    Grup içindeki itemler, ilk iteml ile aynı düzeyde görünecektir.(Menü'deki tüm bu üç item özdeşlerdir. Tabii ki, yukarıda bahsedilen metotlar yardımıyla group ID vererek grup içindeki iki itemin davranışlarını değiştirebilirsiniz.) Sistem gruplamış  olduğunuz itemleri asla ayırmayacaktır. örnek olarak; her itemi android:showAsAction="ifRoom" ile tanımlarsanız, bu itemler ya action bar'da ya da action overflow'da görünecektir.


Checkable Menü İtemlerini kullanmak 

    On/Off gibi iki seçeneğe sahip menü tasarımlarında kullanabileceğiniz kullanışı bir yetenektir. Aşağıdaki şekilde örnek bir gösterim yer almaktadır.

    android:checkAbleBehaviour niteliği aşağıdaki özellikleri taşıyabilir.

  •  single Grup içindeki sadece bir itemin seçilebilir olmasını istediğimizde,
  • all Tüm itemlerin seçilebilir olmasını istediğimizde,
  • none Hiç bir iteme bu özelliği vermek istemediğimizde.


    android:checked niteliğini kullanarak varsayılan olarak seçili gelmesini istediğiniz itemleri <item> elementi içinde belirleyip ardından kod satırında setChecked() bu metod içinde de işlemleri yapabilirsiniz.


    Seçilebilir item tıklandığında, sistem onOptionsItemSelected() metodu gibi sırasıyla tanımlamış olduğunuz geri dönüş metotlarını çağırır. Bu alanlarda checkbox durumunu ayarlamanız gerekir, çünkü checkbox veya radio butonlar durumlarını otomatik olarak değiştirmezler. Yani sizin XML'de yapmış olduğunuz tanım java dosyasında da tanımlanmalı ve Selected şeklinde belirtilmelidir. İtemlerin mevcut durumlarını, isChecked() metodu ile kontrol edebilir, setChecked() metoduyla da seçili duruma getirebilirsiniz.

Örnek:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.menu_archive:
            case R.id.menu_delete:
                if (item.isChecked()) item.setChecked(false);
                else item.setChecked(true);
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }


    Bu şekilde seçili durumu ayarlamazsanız, itemin görünür durumu kullanıcı bu itemi seçtiğinde değişmeyecektir.(checkbox veya radio button). View'in durumunu ayarlarsanız, kullanıcı ayarlamaları yapıp, daha sonra geldiğinde de görünür kıldığınız bu seçimler kullanıcının karşısına gelecektir. 

NOT: Checkable Menü itemleri oturum baslı ve app destroy edildiğinde kayedilmeyen işlemlere yöneliktir. Kullanıcı için ayarları kaydetmek istediğiniz durumda, SharedPreferences kullanarak verileri kayıt etmelisiniz. Bu konuya ileride değineceğiz.

Soru Ve Görüşleriniz için : AndroidVeJava



Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

14 Şubat 2015 Cumartesi

Android - Menu Kavramı Menü Grubu Oluşturmak - 8

Menü Grubu Oluşturmak

    Menü grubu ifadesi, belirli davranışları paylaşan menü itemlerinden oluşan grupları ifade eder. Gruop ile ;


  • setGroupVisible() metoduyla tüm itemleri Show(göster) veya Hide(gizle) edebilirsiniz.
  • setGroupEnabled() metoduyla tüm itemleri aktif veya pasif edebilirsiniz.
  • setGroupCheckable() metoduyla tüm itemlerin seçilip seçilmeyeceğine karar verebilirsiniz.

    Gruplama işlemini menu resource içinde <item> elementi altında <group> etiketi altında veya add() metodu ile grup ID tanımlayarak kodlayabilirsiniz. 

Aşağıda menü grubu içeren menu resource örneğini görebilirsiniz.


Örnek:

<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">

    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100" app:showAsAction="never"/>


        <item android:id="@+id/menu_save"
            android:icon="@drawable/menu_save"
            android:title="@string/menu_save" />
        <!-- menu group -->
        <group android:id="@+id/group_delete">
            <item android:id="@+id/menu_archive"
                android:title="@string/menu_archive" />
            <item android:id="@+id/menu_delete"
                android:title="@string/menu_delete" />
        </group>

</menu>


    Grup içindeki itemler, ilk iteml ile aynı düzeyde görünecektir.(Menü'deki tüm bu üç item özdeşlerdir. Tabii ki, yukarıda bahsedilen metotlar yardımıyla group ID vererek grup içindeki iki itemin davranışlarını değiştirebilirsiniz.) Sistem gruplamış  olduğunuz itemleri asla ayırmayacaktır. örnek olarak; her itemi android:showAsAction="ifRoom" ile tanımlarsanız, bu itemler ya action bar'da ya da action overflow'da görünecektir.


Checkable Menü İtemlerini kullanmak 

    On/Off gibi iki seçeneğe sahip menü tasarımlarında kullanabileceğiniz kullanışı bir yetenektir. Aşağıdaki şekilde örnek bir gösterim yer almaktadır.

    android:checkAbleBehaviour niteliği aşağıdaki özellikleri taşıyabilir.

  •  single Grup içindeki sadece bir itemin seçilebilir olmasını istediğimizde,
  • all Tüm itemlerin seçilebilir olmasını istediğimizde,
  • none Hiç bir iteme bu özelliği vermek istemediğimizde.


    android:checked niteliğini kullanarak varsayılan olarak seçili gelmesini istediğiniz itemleri <item> elementi içinde belirleyip ardından kod satırında setChecked() bu metod içinde de işlemleri yapabilirsiniz.


    Seçilebilir item tıklandığında, sistem onOptionsItemSelected() metodu gibi sırasıyla tanımlamış olduğunuz geri dönüş metotlarını çağırır. Bu alanlarda checkbox durumunu ayarlamanız gerekir, çünkü checkbox veya radio butonlar durumlarını otomatik olarak değiştirmezler. Yani sizin XML'de yapmış olduğunuz tanım java dosyasında da tanımlanmalı ve Selected şeklinde belirtilmelidir. İtemlerin mevcut durumlarını, isChecked() metodu ile kontrol edebilir, setChecked() metoduyla da seçili duruma getirebilirsiniz.

Örnek:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.menu_archive:
            case R.id.menu_delete:
                if (item.isChecked()) item.setChecked(false);
                else item.setChecked(true);
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }


    Bu şekilde seçili durumu ayarlamazsanız, itemin görünür durumu kullanıcı bu itemi seçtiğinde değişmeyecektir.(checkbox veya radio button). View'in durumunu ayarlarsanız, kullanıcı ayarlamaları yapıp, daha sonra geldiğinde de görünür kıldığınız bu seçimler kullanıcının karşısına gelecektir. 

NOT: Checkable Menü itemleri oturum baslı ve app destroy edildiğinde kayedilmeyen işlemlere yöneliktir. Kullanıcı için ayarları kaydetmek istediğiniz durumda, SharedPreferences kullanarak verileri kayıt etmelisiniz. Bu konuya ileride değineceğiz.

Soru Ve Görüşleriniz için : AndroidVeJava



Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Seçilebilir menüler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

14 Şubat 2015 Cumartesi

Android - Menu Kavramı Menü Grubu Oluşturmak - 8

Menü Grubu Oluşturmak

    Menü grubu ifadesi, belirli davranışları paylaşan menü itemlerinden oluşan grupları ifade eder. Gruop ile ;


  • setGroupVisible() metoduyla tüm itemleri Show(göster) veya Hide(gizle) edebilirsiniz.
  • setGroupEnabled() metoduyla tüm itemleri aktif veya pasif edebilirsiniz.
  • setGroupCheckable() metoduyla tüm itemlerin seçilip seçilmeyeceğine karar verebilirsiniz.

    Gruplama işlemini menu resource içinde <item> elementi altında <group> etiketi altında veya add() metodu ile grup ID tanımlayarak kodlayabilirsiniz. 

Aşağıda menü grubu içeren menu resource örneğini görebilirsiniz.


Örnek:

<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">

    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100" app:showAsAction="never"/>


        <item android:id="@+id/menu_save"
            android:icon="@drawable/menu_save"
            android:title="@string/menu_save" />
        <!-- menu group -->
        <group android:id="@+id/group_delete">
            <item android:id="@+id/menu_archive"
                android:title="@string/menu_archive" />
            <item android:id="@+id/menu_delete"
                android:title="@string/menu_delete" />
        </group>

</menu>


    Grup içindeki itemler, ilk iteml ile aynı düzeyde görünecektir.(Menü'deki tüm bu üç item özdeşlerdir. Tabii ki, yukarıda bahsedilen metotlar yardımıyla group ID vererek grup içindeki iki itemin davranışlarını değiştirebilirsiniz.) Sistem gruplamış  olduğunuz itemleri asla ayırmayacaktır. örnek olarak; her itemi android:showAsAction="ifRoom" ile tanımlarsanız, bu itemler ya action bar'da ya da action overflow'da görünecektir.


Checkable Menü İtemlerini kullanmak 

    On/Off gibi iki seçeneğe sahip menü tasarımlarında kullanabileceğiniz kullanışı bir yetenektir. Aşağıdaki şekilde örnek bir gösterim yer almaktadır.

    android:checkAbleBehaviour niteliği aşağıdaki özellikleri taşıyabilir.

  •  single Grup içindeki sadece bir itemin seçilebilir olmasını istediğimizde,
  • all Tüm itemlerin seçilebilir olmasını istediğimizde,
  • none Hiç bir iteme bu özelliği vermek istemediğimizde.


    android:checked niteliğini kullanarak varsayılan olarak seçili gelmesini istediğiniz itemleri <item> elementi içinde belirleyip ardından kod satırında setChecked() bu metod içinde de işlemleri yapabilirsiniz.


    Seçilebilir item tıklandığında, sistem onOptionsItemSelected() metodu gibi sırasıyla tanımlamış olduğunuz geri dönüş metotlarını çağırır. Bu alanlarda checkbox durumunu ayarlamanız gerekir, çünkü checkbox veya radio butonlar durumlarını otomatik olarak değiştirmezler. Yani sizin XML'de yapmış olduğunuz tanım java dosyasında da tanımlanmalı ve Selected şeklinde belirtilmelidir. İtemlerin mevcut durumlarını, isChecked() metodu ile kontrol edebilir, setChecked() metoduyla da seçili duruma getirebilirsiniz.

Örnek:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.menu_archive:
            case R.id.menu_delete:
                if (item.isChecked()) item.setChecked(false);
                else item.setChecked(true);
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }


    Bu şekilde seçili durumu ayarlamazsanız, itemin görünür durumu kullanıcı bu itemi seçtiğinde değişmeyecektir.(checkbox veya radio button). View'in durumunu ayarlarsanız, kullanıcı ayarlamaları yapıp, daha sonra geldiğinde de görünür kıldığınız bu seçimler kullanıcının karşısına gelecektir. 

NOT: Checkable Menü itemleri oturum baslı ve app destroy edildiğinde kayedilmeyen işlemlere yöneliktir. Kullanıcı için ayarları kaydetmek istediğiniz durumda, SharedPreferences kullanarak verileri kayıt etmelisiniz. Bu konuya ileride değineceğiz.

Soru Ve Görüşleriniz için : AndroidVeJava