如何在android中创建水平菜单?

时间:2010-09-30 15:14:45

标签: android user-interface custom-controls android-widget

我正在处理将在屏幕顶部打开的水平菜单。 布局类似于以下内容,

|| < ||菜单项1 ||菜单项2 ||菜单项3 || > ||

我想把它放在屏幕上方。它可以有超过3个菜单 item,它可以遍历上一个和下一个箭头。 我是这样开始的,

  • RelativeLayout(width - fill_parent)

    • 图库视图(此处我附加了适配器)

有两个问题, - 图库视图包含之前和之后的空间 - 滚动项目时会选择

虽然它不是理想的解决方案。我该如何建立自定义 像这样的组件? 任何帮助表示赞赏。

由于

3 个答案:

答案 0 :(得分:2)

如果你想使用一个图库,你可以覆盖onFling行为,如果你想说减慢投掷或忽略垂直投掷等。

要禁用该空格,有一个api调用gallery.setSpacing() ... 要在投掷时不使用gallery.setCallbackDuringFling(false)

选择图库

但是,如果您想要的是一个使用左右按钮滚动的静态菜单,我只是将LinearLayout子类化并从那里开始。

答案 1 :(得分:2)

过了一段时间,我想通了其他方式。它非常适合我。

HorizontalScrollView
         - LinearLayout (orientation: Hoz)
            - LinearLayout - Menuitem1 (orientation: Verticle)
                   - ImageView
                   - TextView
            - LinearLayout - Menuitem2 (orientation: Verticle)
                   - ImageView
                   - TextView
            - LinearLayout - Menuitem3 (orientation: Verticle)
                   - ImageView
                   - TextView

答案 2 :(得分:1)

或者您可以使用ViewFlipper或Horizo​​ntalScrollView。不需要子类化。