Итак, для начала создадим директорию (папку) menu в каталоге res.
В каталоге menu должны хранится все XML файлы меню программы. Создадим один такой файл меню. Назовем его menu.xml и поместим в каталог menu ресурсов.
Содержание файла menu.xml будет таким:
- <?xml version="1.0" encoding="utf-8"?>
- <menu
- xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:id="@+id/Menu1"
- android:title="Меню 1"
- android:orderInCategory="1" />
- <item android:id="@+id/Menu2"
- android:orderInCategory="2"
- android:title="Меню 2" />
- <item android:id="@+id/Menu3"
- android:orderInCategory="3"
- android:title="Меню 3" />
- <item android:id="@+id/submenu"
- android:title="Подменю"
- android:orderInCategory="4">
- <menu>
- <item android:id="@+id/submenu1"
- android:title="Подменю 1" />
- <item android:id="@+id/submenu2"
- android:title="Подменю 2" />
- </menu>
- </item>
- </menu>
Теперь напишем Java код для нашей программы:
- package com.example;
-
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuInflater;
- import android.view.MenuItem;
- import android.widget.Toast;
-
- public class ExampleActivity extends Activity {
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- }
- public boolean onCreateOptionsMenu(Menu menu) {
- new MenuInflater(getApplication())
- .inflate(R.menu.menu, menu);
- return(super.onPrepareOptionsMenu(menu));
- }
-
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case R.id.Menu1:
- Toast.makeText(this, "Мен. 1", Toast.LENGTH_SHORT).show();
- break;
- case R.id.Menu2:
- Toast.makeText(this, "Меню 2", Toast.LENGTH_SHORT).show();
- break;
- case R.id.Menu3:
- Toast.makeText(this, "Меню 3", Toast.LENGTH_SHORT).show();
- break;
- case R.id.submenu:
- Toast.makeText(this, "Подменю", Toast.LENGTH_SHORT).show();
- break;
- }
- return(super.onOptionsItemSelected(item));
- }
- }
И наконец, вот что у нас получилось:
No comments:
Post a Comment