Android Menü Ekleme
Android uygulamalarında menü eklemek, kullanıcıların uygulamanızın farklı bölümlerine erişmesini sağlamak için önemli bir adımdır. Menü, kullanıcıların uygulamanızın işlevlerine kolayca erişebilmesini sağlar ve uygulamanızın daha kullanıcı dostu olmasını sağlar.
Android’de menü eklemek için birkaç farklı yol vardır. Bu yollardan biri, menü öğelerini XML dosyasında tanımlamak ve ardından bu XML dosyasını uygulamanıza eklemektir. Diğer bir yol ise, menü öğelerini kodda oluşturmak ve ardından bu menü öğelerini uygulamanıza eklemektir.
XML Dosyasında Menü Öğeleri Oluşturma
XML dosyasında menü öğeleri oluşturmak için, öncelikle bir XML dosyası oluşturmanız gerekir. Bu XML dosyasını, uygulamanızın res/menu
dizinine kaydetmeniz gerekir. XML dosyasının adı, menu.xml
olmalıdır.
menu.xml
dosyasında, menü öğelerini <item>
etiketleri kullanarak tanımlayabilirsiniz. Her <item>
etiketi, bir menü öğesini temsil eder. Menü öğesinin başlığını, android:title
özniteliğiyle belirleyebilirsiniz. Menü öğesinin simgesini, android:icon
özniteliğiyle belirleyebilirsiniz. Menü öğesinin tıklandığında yapılacak işlemi, android:onClick
özniteliğiyle belirleyebilirsiniz.
Aşağıdaki örnek, menu.xml
dosyasında üç adet menü öğesi tanımlamaktadır:
“`xml
“`
XML Dosyasını Uygulamaya Ekleme
XML dosyasını oluşturduktan sonra, bu XML dosyasını uygulamanıza eklemeniz gerekir. Bunu yapmak için, uygulamanızın AndroidManifest.xml
dosyasını açmanız gerekir. AndroidManifest.xml
dosyasında, <activity>
etiketinin içine aşağıdaki satırı eklemeniz gerekir:
“`xml
“`
Bu satır, uygulamanızın res/menu
dizinindeki menu.xml
dosyasını menü olarak kullanacağını belirtir.
Kodda Menü Öğeleri Oluşturma
Menü öğelerini kodda oluşturmak için, öncelikle bir Menu
nesnesi oluşturmanız gerekir. Bunu yapmak için, getMenuInflater()
metodunu kullanabilirsiniz. getMenuInflater()
metodu, bir MenuInflater
nesnesi döndürür. MenuInflater
nesnesi, menü öğelerini oluşturmak için kullanılır.
Aşağıdaki örnek, kodda üç adet menü öğesi oluşturmaktadır:
“`java
MenuInflater inflater = getMenuInflater();
Menu menu = inflater.inflate(R.menu.menu, null);
MenuItem settingsItem = menu.add(“Settings”);
settingsItem.setIcon(R.drawable.ic_settings);
settingsItem.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
showSettings();
return true;
}
});
MenuItem helpItem = menu.add(“Help”);
helpItem.setIcon(R.drawable.ic_help);
helpItem.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
showHelp();
return true;
}
});
MenuItem aboutItem = menu.add(“About”);
aboutItem.setIcon(R.drawable.ic_about);
aboutItem.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
showAbout();
return true;
}
});
“`
Menü Öğelerini Uygulamaya Ekleme
Menü öğelerini oluşturduktan sonra, bu menü öğelerini uygulamanıza eklemeniz gerekir. Bunu yapmak için, invalidateOptionsMenu()
metodunu kullanabilirsiniz. invalidateOptionsMenu()
metodu, menünün yeniden oluşturulmasını sağlar.
Aşağıdaki örnek, menü öğelerini uygula