Как создать горизонтальное меню в Android? - PullRequest
1 голос
/ 30 сентября 2010

Я работаю над горизонтальным меню, которое откроется в верхней части экрана. Макет выглядит примерно так:

|| <|| Пункт меню 1 || Пункт меню2 || Пункт меню 3 || > ||

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

  • RelativeLayout (width - fill_parent)

    • Галерея (здесь я прилагаю адаптер)

Есть две проблемы, - Вид галереи содержит пространство до и после - При прокрутке его предмет выбирается

Хотя это не идеальное решение для этого. Как я могу построить на заказ компонент, как это? Любая помощь приветствуется.

Спасибо

Ответы [ 3 ]

2 голосов
/ 04 января 2011

Через некоторое время я разобрался в другом. У меня это отлично сработало.

HorizontalScrollView
         - LinearLayout (orientation: Hoz)
            - LinearLayout - Menuitem1 (orientation: Verticle)
                   - ImageView
                   - TextView
            - LinearLayout - Menuitem2 (orientation: Verticle)
                   - ImageView
                   - TextView
            - LinearLayout - Menuitem3 (orientation: Verticle)
                   - ImageView
                   - TextView
2 голосов
/ 30 сентября 2010

Если вы хотите использовать галерею, вы можете переопределить поведение onFling, если вы хотите сказать, замедлить или игнорировать вертикальное и т. Д.

Чтобы отключить пробел, есть вызов API gallery.setSpacing() ... Чтобы не выбирать галерею, когда вы бросаете, используйте gallery.setCallbackDuringFling(false)

Однако, если все, что вам нужно, это статическое меню, которое прокручивается с помощью левой и правой кнопок, я бы просто создал подкласс LinearLayout и пошел бы оттуда.

1 голос
/ 04 января 2011

Или вы можете использовать ViewFlipper или HorizontalScrollView.Для них не нужно создавать подклассы.

...