【问题标题】:How to create horizontal menu in android?如何在android中创建水平菜单?
【发布时间】:2010-09-30 15:14:44
【问题描述】:
我正在开发将在屏幕顶部打开的水平菜单。
布局类似于以下,
|| ||
我想把它放在屏幕顶部。它可以有3个以上的菜单
item,它可以遍历上一个和下一个箭头。
我是这样开始的,
有两个问题,
- 图库视图包含之前和之后的空间
- 滚动其项目时被选中
虽然这不是理想的解决方案。我怎样才能建立自定义
像这样的组件?
任何帮助表示赞赏。
谢谢
【问题讨论】:
标签:
android
user-interface
custom-controls
android-widget
【解决方案1】:
如果你想使用画廊,你可以覆盖 onFling 行为,如果你想说减慢投掷或忽略垂直投掷等。
要禁用空间,有一个api调用gallery.setSpacing()...
要在投掷时不选择图库,请使用gallery.setCallbackDuringFling(false)
但是,如果您想要的只是一个使用左右按钮滚动的静态菜单,我只需将 LinearLayout 子类化并从那里开始。
【解决方案2】:
一段时间后,我想出了其他方法。它非常适合我。
HorizontalScrollView
- LinearLayout (orientation: Hoz)
- LinearLayout - Menuitem1 (orientation: Verticle)
- ImageView
- TextView
- LinearLayout - Menuitem2 (orientation: Verticle)
- ImageView
- TextView
- LinearLayout - Menuitem3 (orientation: Verticle)
- ImageView
- TextView
【解决方案3】:
或者您可以使用 ViewFlipper 或 HorizontalScrollView。这些不需要子类化。