#android #drop-down-menu
#Android #выпадающее меню
Вопрос:
Я хочу создать выпадающее меню, подобное тому, что на прикрепленной картинке в Android Я много искал, но ничего не смог найти?
Не могли бы вы сказать мне, с чего начать?
Комментарии:
1. Пожалуйста, рассмотрите возможность добавления скриншота к вашему сообщению, объясняющего, что, по вашему мнению, представляет собой «выпадающее меню» в Android. Например, вы могли бы опубликовать скриншот «выпадающего меню», которое вы видели в другом приложении. Вы можете использовать DDMS (standalone или плагин Eclipse), чтобы сделать снимок экрана.
Ответ №1:
Если вы пытаетесь сделать что-то, где вы видите список элементов при вводе текста в TextView, возможно, вы ищете AutoCompleteTextView. Пример реализации можно найти здесь.
Если вы пытаетесь использовать более обычное выпадающее меню, вы можете захотеть использовать виджет Spinner. Пример его реализации можно найти здесь.
Дайте мне знать, если вам понадобится дополнительная помощь.
Ответ №2:
Android обычно не использует «выпадающее меню», подобное тому, которое у вас на скриншоте. Я рекомендую вам изучить структуру пользовательского интерфейса Android и придерживаться ее.
В Honeycomb (пользовательский интерфейс планшета) есть «навигационный режим» панели действий, который будет выглядеть немного похожим, хотя он и не предназначен для использования в качестве меню.
Комментарии:
1. На самом деле я имел в виду меню, которое я там показал, а не счетчик. Но я ценю вашу помощь, ребята. @CommonsWare Вы предлагаете мне использовать spinner или вы знаете что-то другое, более близкое к моей цели?
2. @FAFI: Как я указал в своем ответе, ваша цель неверна. Приложения Android не используют «выпадающие меню». Я не знаю ни о какой текущей мобильной ОС, которая это делает. Пожалуйста, следуйте стандартным соглашениям пользовательского интерфейса для платформы. Поскольку я абсолютно понятия не имею, в чем заключается бизнес-проблема, которую вы пытаетесь решить, я не могу сказать вам, является ли
Spinner
или меню опций или что-то еще правильным ответом.3. На самом деле это больше, чем просто режим навигации по списку на панели действий,
Spinner
виджеты от Honeycomb по умолчанию используют стиль выпадающего списка на месте.android.widget.PopupMenu
также предлагает простой API для представления этих меню стилей, привязанных к произвольным представлениям.4. @adamp: Ваши решения предназначены для Honeycomb. Сообщество понятия не имеет, как это отразится на Ice Cream Sandwich (ICS), поскольку Google пытается поместить часть Honeycomb на экран размером с телефон — насколько нам известно, на телефонах навигационный режим в панели действий поддерживаться не будет и
PopupMenu
будет не одобряться. Объедините это с необходимостью поддержки 99,4% используемых сегодня устройств Android, на которых установлены версии Android до Honeycomb, и мне неудобно советовать людям использовать пользовательский интерфейс «выпадающего меню» в настоящее время. Если у специалистов по UX в Google есть рекомендации для нас в этой области, я был бы рад их услышать!5. @adamp: Я был в комнате для этой презентации. Я не помню, чтобы Reto освещал обсуждаемую тему в этом вопросе. Тем не менее, это хорошая презентация.
Ответ №3:
Лучше всего будет создать представление с нужным вам меню. Затем создайте анимацию, которая увеличит масштаб X и Y за некоторое время.
Пример:
android:fromXScale="0.1"
android:toXScale="1.0"
android:fromYScale="0.1"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="0%"
android:duration="@android:integer/config_shortAnimTime"
Затем все, что вам нужно сделать, это применить приложение к вашему представлению в соответствующем onclicklistener