En temel haliyle işlem çubuğu, bir tarafta etkinliğin başlığını, diğer tarafta ise taşma menüsünü gösterir. Uygulama çubuğu, bu temel biçimde bile kullanıcılara faydalı bilgiler sağlar ve Android uygulamalarına tutarlı bir görünüm ve tarz kazandırır.
Varsayılan temayı kullanan tüm etkinliklerde uygulama çubuğu olarak ActionBar
bulunur. Uygulama çubuğu özellikleri, çeşitli Android sürümlerinde yerel ActionBar
öğesine eklenir. Sonuç olarak, yerel ActionBar
, cihazın kullandığı Android sürümüne bağlı olarak farklı davranır.
Öte yandan, AndroidX AppCompat kitaplığının Toolbar
sürümüne özellikler eklenir. Bu, söz konusu özelliklerin AndroidX kitaplıklarını kullanan cihazlarda kullanılabileceği anlamına gelir.
Bu nedenle, etkinliklerinizin uygulama çubuklarını uygulamak için AndroidX kitaplığının Toolbar
sınıfını kullanın. AndroidX kitaplığının araç çubuğunu kullanmak, uygulamanızın davranışını en geniş cihaz yelpazesinde tutarlı hale getirir.
Etkinliğe Araç Çubuğu Ekleme
Aşağıdaki adımlarda, etkinliğinizin uygulama çubuğu olarakToolbar
özelliğinin nasıl ayarlanacağı açıklanmaktadır:
- AndroidX'e genel bakış bölümünde açıklandığı şekilde AndroidX kitaplığını projenize ekleyin.
- Etkinliğin şu özellikleri kapsadığından emin olun:
AppCompatActivity
:Kotlin
class MyActivity : AppCompatActivity() { // ... }
Java
public class MyActivity extends AppCompatActivity { // ... }
- Uygulama manifestinde,
<application>
öğesini, aşağıdaki örnekte gösterildiği gibi AppCompat'inNoActionBar
temalarından birini kullanacak şekilde ayarlayın. Bu temalardan birinin kullanılması, uygulamanın uygulama çubuğunu sağlamak için yerelActionBar
sınıfını kullanmasını engeller.<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Etkinliğin düzenine bir
Toolbar
ekleyin. Örneğin, aşağıdaki yerleşim kodu birToolbar
ekler ve bu öğeye etkinliğin üzerinde yüzüyormuş gibi bir görünüm verir:<androidx.appcompat.widget.Toolbar android:id="@+id/my_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:elevation="4dp" android:theme="@style/ThemeOverlay.AppCompat.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
Uygulama çubuğu yüksekliğiyle ilgili öneriler için Materyal Tasarım spesifikasyonuna bakın.
Araç çubuğunu uygulama çubuğu olarak kullanacağınız için etkinliğin düzenlemesinin üst kısmına yerleştirin.
- Etkinliğin
onCreate()
yöntiminde, etkinliğinsetSupportActionBar()
yöntemini çağırın ve aşağıdaki örnekte gösterildiği gibi etkinliğin araç çubuğunu iletin. Bu yöntem, araç çubuğunu etkinliğin uygulama çubuğu olarak ayarlar.Kotlin
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_my) // The Toolbar defined in the layout has the id "my_toolbar". setSupportActionBar(findViewById(R.id.my_toolbar)) }
Java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my); Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar); }
Uygulamanızda artık temel bir işlem çubuğu var. İşlem çubuğu varsayılan olarak uygulamanın adını ve başlangıçta Ayarlar öğesini içeren bir taşma menüsü içerir. İşlem ekleme ve işleme bölümünde açıklandığı gibi işlem çubuğuna ve taşma menüsüne daha fazla işlem ekleyebilirsiniz.
Uygulama çubuğu yardımcı program yöntemlerini kullanma
Araç çubuğunu bir etkinliğin uygulama çubuğu olarak ayarladıktan sonra AndroidX kitaplığının ActionBar
sınıfı tarafından sağlanan yardımcı program yöntemlerine erişebilirsiniz. Bu yaklaşım, uygulama çubuğunu gizleme ve gösterme gibi faydalı işlemler yapmanıza olanak tanır.
ActionBar
yardımcı program yöntemlerini kullanmak için etkinliğin getSupportActionBar()
yöntemini çağırın. Bu yöntem, bir AppCompat ActionBar
nesnesine referans döndürür.
Bu referansı aldıktan sonra uygulama çubuğunu ayarlamak için ActionBar
yöntemlerinden herhangi birini çağırabilirsiniz. Örneğin, uygulama çubuğunu gizlemek için ActionBar.hide()
işlevini çağırın.