İşlem ekleme ve işleme

Uygulama çubuğu, kullanıcı işlemleri için düğmeler eklemenize olanak tanır. Bu özellik, Mevcut bağlam için en önemli işlemleri uygulamanın üst kısmında görebilirsiniz. Örneğin, fotoğraf tarama uygulamasında paylaş ve oluştur albüm düğmeleri bulunur. Zaman Kullanıcı tek bir fotoğrafa bakarsa uygulamada kırpma ve filtre düğmelerinden birini seçin.

Uygulama çubuğundaki alan sınırlıdır. Bir uygulama, sığabileceğinden daha fazla işlem bildirirse uygulama çubuğunda, uygulama çubuğu fazla işlemleri bir taşma menüsüne gönderir. Uygulama ayrıca bir işlemin her zaman taşma menüsünde gösterilmesini de görüntüleyebilirsiniz.

Android uygulamasında Now'ı gösteren bir işlem çubuğu simgesi
Şekil 1. "Artık Android'de" işlem simgesi uygulamasını indirin.
ziyaret edin.
'nı inceleyin.

İşlem düğmeleri ekleyin

İşlem taşmasında kullanılabilen tüm işlem düğmeleri ve diğer öğeler XML biçiminde tanımlı menü kaynağı. Eklemek istediğiniz işlem çubuğuna ekleyebilirsiniz. Projenizin dosyasında yeni bir XML dosyası res/menu/ dizini.

Bir <item> öğesini kullanın, işlem çubuğuna dahil etmek istediğiniz her bir öğe için aşağıdaki örnek menü XML dosyası:

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

    <!-- "Mark Favorite", must appear as action button if possible. -->
    <item
        android:id="@+id/action_favorite"
        android:icon="@drawable/ic_favorite_black_48dp"
        android:title="@string/action_favorite"
        app:showAsAction="ifRoom"/>

    <!-- Settings, must always be in the overflow. -->
    <item android:id="@+id/action_settings"
          android:title="@string/action_settings"
          app:showAsAction="never"/>

</menu>

app:showAsAction özelliği, işlemin uygulama çubuğunda düğme olarak gösterilir. Mevcut app:showAsAction="ifRoom"—örnek koddaki gibi favorite işlemi: Yer varsa işlem düğme olarak gösterilir uygulama çubuğunu kullanın. Yeterli yer yoksa fazla işlemler, taşma menüsü. Aşağıdaki gibi app:showAsAction="never" için örnek kodun settings işlemi (işlem her zaman uygulama çubuğunda gösterilmez.

İşlem görüntülenirse sistem, ilgili işlemin simgesini işlem düğmesi olarak kullanır görünür. Şurada pek çok kullanışlı simge bulabilirsiniz: Malzeme Simgeleri.

İşlemlere yanıt verin

Kullanıcı uygulama çubuğu öğelerinden birini seçtiğinde sistem, etkinlik onOptionsItemSelected(). geri çağırma yöntemini kullanır ve MenuItem nesne belirtin. onOptionsItemSelected(), MenuItem.getItemId() yöntemini kullanın. Döndürülen kimlik, ilgili <item> öğesinin android:id özelliği için de geçerlidir.

Örneğin, aşağıdaki kod snippet'i kullanıcının hangi işlemi seçtiğini kontrol eder. Yöntem, kullanıcının işlemini tanımazsa üst sınıfı çağırır yöntem:

Kotlin

override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) {
    R.id.action_settings -> {
        // User chooses the "Settings" item. Show the app settings UI.
        true
    }

    R.id.action_favorite -> {
        // User chooses the "Favorite" action. Mark the current item as a
        // favorite.
        true
    }

    else -> {
        // The user's action isn't recognized.
        // Invoke the superclass to handle it.
        super.onOptionsItemSelected(item)
    }
}

Java

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.action_settings:
            // User chooses the "Settings" item. Show the app settings UI.
            return true;

        case R.id.action_favorite:
            // User chooses the "Favorite" action. Mark the current item as a
            // favorite.
            return true;

        default:
            // The user's action isn't recognized.
            // Invoke the superclass to handle it.
            return super.onOptionsItemSelected(item);

    }
}