Переключатель панели кнопок Android - PullRequest
5 голосов
/ 15 февраля 2010

Я ищу вид интерфейса, который имитирует функциональность Управление пользовательским интерфейсом экрана Google Maps, где он позволяет пользователю выберите тип разрешенных направлений: автомобиль, транзит или ходьба.

Как это -> http://snapplr.com/50rh

Виджет - это три кнопки, расположенные горизонтально закругленные углы только слева от первой и правой третьей кнопки.

Я не вижу стандартного способа сделать это, хотя кажется, что быть общим виджетом. Есть ли какой-то другой стандартный способ представления групповая выборка в горизонтальном макете как «одиночный» макет объект.

Ответы [ 4 ]

1 голос
/ 15 февраля 2010

Мне неизвестен виджет панели кнопок в Android SDK. Вы должны создать его с ImageButtons в LinearLayout, с настраиваемым фоном для всех (чтобы придать глянцево-черный вид, обрабатывать различные наборы углов и обрабатывать выбранные, а не изображения). Затем вам нужно будет добавить переключающие смарты, так что нажатие одного делает его выбранным, а остальные в макете не выбираются.

Если вы хотите придерживаться более простых существующих виджетов, Spinner, RadioButton или ToggleButton будут наиболее вероятными кандидатами.

0 голосов
/ 06 апреля 2011

Лучшая панель кнопок, которую я нашел: http://androidworkz.com/2011/02/04/custom-menu-bar-tabs-how-to-hook-the-menu-button-to-showhide-a-custom-tab-bar/

Предполагается, что он будет использоваться в качестве замены меню, но я считаю, что он также хорош для пользовательской панели кнопок. Я на самом деле собираюсь интегрировать его в свое приложение сразу: -)

Престижность для androidworkz, оригинальный автор.

0 голосов
/ 25 февраля 2011

Я думаю, что виджет управления питанием делает то, что вы хотите. Глядя на источник для виджета, он использует комбинацию LinearLayouts & ImageViews для достижения макета.

Файл макета: https://android.googlesource.com/platform/packages/apps/Settings/+/froyo-release/res/layout/widget.xml

Исходный код: https://android.googlesource.com/platform/packages/apps/Settings/+/froyo-release/src/com/android/settings/widget/SettingsAppWidgetProvider.java

0 голосов
/ 15 февраля 2010

Я не думаю, что есть встроенный способ сделать это. Я могу придумать два способа сделать это. Первым было бы создать собственный стиль для TabWidget. Вторым было бы создать свой собственный виджет. Создание стиля TabWidget может быть более гибким, поскольку вы можете легко вернуться и добавить или удалить вкладки, и он будет обновляться соответствующим образом. Создание собственного пользовательского виджета даст вам гораздо больший контроль над тем, как виджет выглядит и действует. Так что на самом деле вам нужно посмотреть, что лучше всего подходит для того, что вы пытаетесь сделать.

...