Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Применил метод onMenuOpened(...), все уже правильно работает.
Но все равно вопрос остался, почему при первом запуске onPrepareOptionsMenu срабатывает до вызова меню.
Но все равно вопрос остался, почему при первом запуске onPrepareOptionsMenu срабатывает до вызова меню.
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Здравствуйте.
Подскажите, пожалуйста, как можно создать меню с кнопками внизу, отображаемое постоянно, без нажатия кнопки Menu (например, как в стандартном будильнике, см. вложение).
Подскажите, пожалуйста, как можно создать меню с кнопками внизу, отображаемое постоянно, без нажатия кнопки Menu (например, как в стандартном будильнике, см. вложение).
- Вложения
-
- 1.png (13.25 КБ) 12528 просмотров
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
А там среди стандартных элементов есть же табы (панель с несколькими кнопками), её никак не прилепить?
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Я не понял как делать обработку нажатий в этом меню. Уже урок №15 посмотрел, но там немного не так.
Должно быть что-то вроде этого кода, но что в case писать?
Должно быть что-то вроде этого кода, но что в case писать?
Код: Выделить всё
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()){
case :
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
id, которые указаны в том файле который инфлейтили в методе onCreateOptionsMenu
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Это если меню добавлялось программно: menu.add(0, 1, 0, "add");rezak90 писал(а):id, которые указаны в том файле который инфлейтили в методе onCreateOptionsMenu
А если меню создавалось из xml-файла? Там id - это текст:
Код: Выделить всё
<item
android:id="@+id/menu_add"
android:title="add">
</item>
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
где вы текст видите? id будет таким - R.menu.menu_add (подчёркивания не рекомендую использовать в именах id)worldmen писал(а):Это если меню добавлялось программно: menu.add(0, 1, 0, "add");rezak90 писал(а):id, которые указаны в том файле который инфлейтили в методе onCreateOptionsMenu
А если меню создавалось из xml-файла? Там id - это текст:Код: Выделить всё
<item android:id="@+id/menu_add" android:title="add"> </item>
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Обязательно тут метод суперкласса вводить?
Код: Выделить всё
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.mymenu, menu);
return super.onCreateOptionsMenu(menu);
}
- Mikhail_dev
- Сообщения: 2386
- Зарегистрирован: 09 янв 2012, 14:45
- Откуда: Самара
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Доброго вечера.
Имею небольшой "затык" при работе с меню через Xml: скопипастил xml-ку из урока - отображается нормально, но при любой попытке работать с ним программно (методы onPrepareOptionsMenu и onOptionsItemSelected) получаю exception.
Видимо где то затупил, но где и как... Буду рад подсказке бывалых )
Имею небольшой "затык" при работе с меню через Xml: скопипастил xml-ку из урока - отображается нормально, но при любой попытке работать с ним программно (методы onPrepareOptionsMenu и onOptionsItemSelected) получаю exception.
Видимо где то затупил, но где и как... Буду рад подсказке бывалых )
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Вопрос снимается - разобрался, "сам дурак" )itAp34 писал(а):Доброго вечера.
Имею небольшой "затык" при работе с меню через Xml: скопипастил xml-ку из урока - отображается нормально, но при любой попытке работать с ним программно (методы onPrepareOptionsMenu и onOptionsItemSelected) получаю exception.
Видимо где то затупил, но где и как... Буду рад подсказке бывалых )
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Каким образом в IDE можно добавлять в код активити конструкторы для методов onPrepareOptionsMenu, onOptionsItemSelected и других?
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
начинаешь набирать и нажимаешь ctrl+пробел
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Спасибо туплю. Начинал набирать "public boolean onCr" , только потом ctrl+пробел и ничего не получалось.
Кстати, кто подскажет зачем этот метод (onCreateOptionsMenu и другие) возвращает boolean? Почему не просто void?
Кстати, кто подскажет зачем этот метод (onCreateOptionsMenu и другие) возвращает boolean? Почему не просто void?
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
http://developer.android.com/reference/ ... view.Menu)
по таким вопросам - вот на этот сайт добро пожаловать.
по таким вопросам - вот на этот сайт добро пожаловать.
Returns
You must return true for the menu to be displayed; if you return false it will not be shown.
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Спасибо. Это я тоже видел. Поставлю вопрос по другому. В чем фишка получать этот true таким образом:
Код: Выделить всё
return super.onCreateOptionsMenu(menu);
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
это не "получать", это вызов метода суперкласса!!!
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Можешь пояснить? Или ткнуть носом где прочитать. Почему не просто написать return true&
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Потому, что нужно вначале выполнить метод суперкласса, а затем, возвращать значение. Если написать то, что ты сказал, то метод суперкласса не сработает. При этом возможно ошибка или то, что компонент вообще не появится на экране (смотря что в этом методе содержится).
Гугли по словам ООП наследование.
Гугли по словам ООП наследование.
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 14. Меню, группы, порядок. MenuInflater и xml-меню.
Я имею некое представление о наследовании в ООП. В упор не понимаю при чем оно здесь. Вот гайд на андройд девелоперс. Это приведенный пример. Возвращают просто true.Foenix писал(а):Потому, что нужно вначале выполнить метод суперкласса, а затем, возвращать значение. Если написать то, что ты сказал, то метод суперкласса не сработает. При этом возможно ошибка или то, что компонент вообще не появится на экране (смотря что в этом методе содержится).
Гугли по словам ООП наследование.
Код: Выделить всё
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.game_menu, menu);
return true;
}