Topic: Меню

Обсуждение статьи Меню

Re: Меню

cannot find symbol variable textviewinfo вот  с такими ошибками что делать подскажите)

Re: Меню

Ошибка при объявлении переменной textviewinfo.

4 (edited by sorbifer-copyright 2015-08-14 18:11:38)

Re: Меню

)))))))))
это я понял) я спрашивал как исправить эту ошибку

Re: Меню

Правильно объявить и инициализировать переменную. Во всех уроках есть этот код.

Re: Меню

Столкнулся с маленькой проблемкой, благо догадался, как ее решить.
Сделал все, как указано в уроке, запускаю и ...  в правой части заголовка я не увидел значок из трёх точек, выстроенных в вертикальную линию! Поразмыслив, создал новый AVD с api 22 и запустил програмку в нем, там это меню повилось! На виртуальном устройстве с api 15 этого значка не получишь! В самой статье об этом не говорится.

Re: Меню

Скорее всего это проблемы выбранного вами устройства в эмуляторе. В API 15 должно выводиться меню. Этот вариант статьи писался, когда API 15 был последней версией, если не путаю.

Re: Меню

Invisible wrote:

Столкнулся с маленькой проблемкой, благо догадался, как ее решить.
Сделал все, как указано в уроке, запускаю и ...  в правой части заголовка я не увидел значок из трёх точек, выстроенных в вертикальную линию! Поразмыслив, создал новый AVD с api 22 и запустил програмку в нем, там это меню повилось! На виртуальном устройстве с api 15 этого значка не получишь! В самой статье об этом не говорится.

У меня точно такое же происходит.
Виртуальная машина,  Genymotion Samsung galaxy note 2 API 18
Другие пока не пробовал.

9 (edited by Affabilis 2016-01-25 12:11:26)

Re: Меню

Добрый День Александр, у меня возникла такая же ошибка как в последнем посте. Не появляется меню. Шаблон Empty, Android 4.1. Проект эмулировал на смартфон galaxy sIII. При эмуляции в Genymotion на Android 6.0 полет нормальный. Не подскажете в чем может быть проблема?

Re: Меню

Мне лень создавать эмуляторы для старых устройств, но точно помню, что они там были. Это может быть связано с кривой реализацией какой-то настройки в самом эмуляторе. Если говорить о реальных устройствах Самсунга, то на моем S2 была отдельная кнопка меню, которая отвечала за нее и поэтому у телефона не было этих трех точек.

Re: Меню

Да вы правы, оказалось, что есть отдельная кнопка, отвечающая за вызов меню. Все остальное работает так же как описано. Благодарю за урок.

Re: Меню

Согласен,  проверил с десяток AVD, кнопка"меню" есть но она спрятана подменю,  "три точки" есть только на последних аппаратах.
Может данную информацию в уроке разместить,  чтобы не беспокоили вопросами?

Re: Меню

На стандартных аппаратах "три точки" должны быть у всех с Android 4. Если их нет, то это или вина самих производителей или недоработка эмулятора. Я пишу о стандартных устройствах.

Re: Меню

Насчет меню с переключателями. Вы в уроке пишите:

Большого смысла в этом режиме я не вижу.

На самом деле (не скажу про андроиды), но в Делфи например такие меню изредка бывают полезны. Это не столько меню, сколько радиобаттоны. Только к ним надо еще немножко в обработчик дописать: Вот копипаста из моего
@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        //return super.onOptionsItemSelected(item);
        int id=item.getItemId();
        TextView tv=(TextView) findViewById(R.id.TextView);
        item.setChecked(true);
        switch (id) {
            case R.id.action_cat_female:
                tv.setText("Кошко");
                break;
            case R.id.action_cat_male:
                tv.setText("Кот");
                break;
            case R.id.action_kitten:
                tv.setText("Когтенок");
                break;
            case R.id.action_settings:
                tv.setText("Устаноффко");
                return super.onOptionsItemSelected(item);
        }
        return true;
    }

Грубо говоря, отличается на строку item.setChecked(true); - эта строка метит, что этот пункт меню был выбран. А в таких меню изредка бывает необходимость

Re: Меню

Я в меню такой необходимости ни разу не встречал. Но если вам нужно, то используйте. Никто не запрещает.

Re: Меню

Ну могу пример привести, где я такое использовал, но не на андроиде, конечно
Если хотите, можете скачать, но это необязательно: http://sxak.amikeco.ru/rubik.zip
Там мой симулятор кубика-рубика разных размеров, написанный на c++builder. Так вот последний пункт меню - язык. При выбирании подпунктов остается галочка на выбранном языке

Re: Меню

Мы говорим о разных вещах. Я говорю именно об использовании в Android. В Windows это распространенная практика, не спорю.

Re: Меню

Тоже столкнулся с проблемой, что не видно значка с 3 точками в правом вехрнем углу при запуске приложения из урока на на реальном устройстве с андроидом 4.1.2. При запуске на реальном устройстве с андроидом 5.1 кнопка видна. Однако при запуске пустого шаблона Navigation Drawer Activity из урока http://developer.alexanderklimov.ru/and … tivity.php на реальном андроиде 4.1.2 кнопка меню с точками есть.

Re: Меню

Производители иногда делают свои изменения в системе. поэтому на некоторых устройствах можно и не увидеть эти значки меню.

Re: Меню

Почему то у меня в меню с переключателями галочки не остается после выбора. Не в телефоне, не в эмуляторе.

Re: Меню

Сами запоминайте и восстанавливайте.

Re: Меню

alexander.klimoff wrote:

Сами запоминайте и восстанавливайте.

Если я правильно понял, то я должен: создать переменную в классе, содержащую id пункта меню, который был нажат. Меню каждый раз при открытии пересоздаётся, и в функции OnCreateOptionsMenu проверить переменую (было ли вообще что-то нажато), найти пункт с этим id и проставить ему чекед.
В общих чертах верно ?

Re: Меню

Добрый день!
Уважаемый Александр, неужели ничего нельзя сделать для отображения кнопки меню в заголовке для старых устройств?
Я посмотрел некоторые программы на своём телефоне с сенсорной кнопкой 'меню', там кнопка с тремя точками присутствует... Может они просто использовали imageButton и сами нарисовали три точки?..
Не хочется пропускать такой интересный урок из-за того, что он не подходит к моему устройству. Может можно как-то решить проблему?
Примеры программ с меню:
http://s015.radikal.ru/i332/1604/8e/44759150e30at.jpghttp://s014.radikal.ru/i327/1604/c3/b9444c35425dt.jpg

Re: Меню

Если бы у меня была такая проблема, я мог бы рассказать о её решении. Так как у меня такой проблемы не было, то я не могу помочь. Может решение на поверхности, а может там что-то нетипичное.

Re: Меню

Отпишусь для тех у кого возникла такая проблема.
В моём случаем дело оказалось в версии Android:
4.0.1 кнопка меню не появляется,
4.4.4 кнопка появляется.
Наличие физических кнопок девайса не сказывается.