Страница 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-м уроке).