Страница 1 из 6

Урок 13. Создание простого меню

Добавлено: 05 сен 2011, 03:00
damager82
В этом уроке мы:
- создаем пункты меню
 


Click here to read this article!

Re: Урок 13. Создание простого меню

Добавлено: 10 янв 2012, 18:35
Mikhail_dev
Не пойму немного. Мы меню должны рисовать в XML или должны создать объект какого-либо класса, который и реализует этот интерфейс Menu? У меня в примере не появляется меню, ибо мы не создали никакого объекта меню, а лишь описали методы, на сколько я понял.

Re: Урок 13. Создание простого меню

Добавлено: 10 янв 2012, 20:32
damager82
Метод onCreateOptionsMenu вызывается системой, и в него передается объект Menu. А наша задача - наполнить его пунктами.
You should place your menu items in to menu
У меня работает. Нажимаю кнопку menu на эмуляторе и меню отображается.

Re: Урок 13. Создание простого меню

Добавлено: 10 янв 2012, 21:04
Mikhail_dev
Ой, прошу прощения. Я почему-то невнимательно прочитал то, что нужно меню нажать в эмуляторе, думал оно сразу отображаться должно =) У самого еще пока нету телефона на андроиде, поэтому не очень осведомлен. :)

Re: Урок 13. Создание простого меню

Добавлено: 30 мар 2012, 15:04
chuikoff
Спасибо за статью, понятно и интересно!
Ещё тут http://developer.android.com/guide/topics/ui/menus.html написано что можно сделать меню путём создания menu.xml и вообще с помощью разметки. Можете как-то прокомментировать это? Как лучше?

Re: Урок 13. Создание простого меню

Добавлено: 02 апр 2012, 09:20
damager82
По идее, с XML проще. Кода точно меньше получится.

Возможно гибкости чуть больше у программного способа, но ненамного.

Re: Урок 13. Создание простого меню

Добавлено: 11 июн 2012, 16:23
daiz123
У вас все методы созданы автоматически судя по этой надписи // TODO Auto-generated method stub , подскажите как вы это делаете,а то я всё набираю вручную. Спасибо

Re: Урок 13. Создание простого меню

Добавлено: 13 июн 2012, 10:35
damager82
daiz123 писал(а):У вас все методы созданы автоматически судя по этой надписи // TODO Auto-generated method stub , подскажите как вы это делаете,а то я всё набираю вручную. Спасибо
Допустим, хотите реализовать метод onDestroy.

1) Начинаете набирать текст "ondes", затем жмете CTRL+пробел - он предложит варианты. Выбираете onDestroy.

2) Либо жмете ALT+SHIFT+S, выбираете Override/Implement methods, выбираете onDestroy, жмете ОК

Re: Урок 13. Создание простого меню

Добавлено: 28 июн 2012, 18:32
Тын-Тын
Объясните,я уже и сам печатал,и тупо копировал полный код, в Activity полно ошибок выдает,подскажите, что делаю не так?

Re: Урок 13. Создание простого меню

Добавлено: 29 июн 2012, 15:52
damager82
Тын-Тын писал(а):Объясните,я уже и сам печатал,и тупо копировал полный код, в Activity полно ошибок выдает,подскажите, что делаю не так?
Весь проект можете экспортнуть, выложить куданить и сюда ссылку кинуть? Поглядим.
Если нет, то код Activity и скрин раскрытого дерева проекта постите.

И создайте тему здесь, плз - viewforum.php?f=39

Re: Урок 13. Создание простого меню

Добавлено: 20 июл 2012, 11:10
math64
OnCreateOptionsMenu() вызывается только один раз.
Если его нужно изменить, переопределяйте метод onPrepareOptionsMenu():

Код: Выделить всё

	@Override
	public boolean onPrepareOptionsMenu(Menu menu) {
		menu.clear();
		getMenuInflater().inflate(R.menu.otions_menu, menu);
		for (String word : lastWords)
			menu.add(word);
		return true;
	}

Re: Урок 13. Создание простого меню

Добавлено: 31 июл 2012, 10:57
math64
У MenuItem есть свойства checkable и checked. Как с ними работать?
При вызове menuItem.setChecked(true); в onPrepareOptionsMenu(Menu menu) флажок не появляется - android:checkable="true" прописано в xml.

Re: Урок 13. Создание простого меню

Добавлено: 02 авг 2012, 08:41
math64
C простым меню checked не поддерживается - только в контекстном меню, внутри группы.
В onPrepareOptionsMenu можно использовать setIcon() вместо этого.

Re: Урок 13. Создание простого меню

Добавлено: 20 авг 2012, 10:11
Blockhead
А возможно дописать урок рассказав как можно одно меню разместит на нескольких активити?

Re: Урок 13. Создание простого меню

Добавлено: 20 авг 2012, 13:10
math64
Blockhead писал(а):А возможно дописать урок рассказав как можно одно меню разместит на нескольких активити?
Это уже не относится к программированию в Андроиде а к ООП вообще, поэтому в уроках вряд ли нужно объяснять.
Создаёшь класс BaseActivity extends Activity, где переопределяешь методы onCreateOptionsMenu(), onOptionsItemSelected() и т.д.
От него определяешь MainActivity extends BaseActivity, Activity2 BaseActivity и т.д.
Если уже есть MainActivity extends Activity и хочешь так его переделать, используй рефакторинг Extract SuperClass... для создания класса BaseActivity.

Re: Урок 13. Создание простого меню

Добавлено: 22 авг 2012, 21:50
Overdos
Помогите у меня ни чего нет! ))Изображение

Re: Урок 13. Создание простого меню

Добавлено: 22 авг 2012, 22:33
k.chaiko
когда жмешь на кнопку меню оно не открывается или что ??

Re: Урок 13. Создание простого меню

Добавлено: 22 авг 2012, 23:33
Overdos
нет (

Re: Урок 13. Создание простого меню

Добавлено: 23 авг 2012, 12:06
Overdos
к тому же , нет кнопки меню! че за бред.

Re: Урок 13. Создание простого меню

Добавлено: 27 авг 2012, 08:26
zlo-vred
Overdos писал(а):к тому же , нет кнопки меню! че за бред.
У меня справа не отображается виртуальная клавиатура, поэтому пользуюсь F2 - Menu, Esc - Back, Home - Home.
Виртуальная клавиатура появляется только для стандартных экранов, QVGA например.
http://developer.android.com/tools/help/emulator.html - Здесь про соответствующие клавиши подробно (Эта ссылка была в 3-м уроке).