如何制作一个水平显示项目的操作栏下拉菜单?

时间:2013-01-26 16:40:06

标签: android drop-down-menu android-actionbar

我想创建一个动作栏下拉菜单,水平显示项目(图标)。像这样:

enter image description here

这假设是一个带有下拉菜单的操作栏,您可以在其中选择颜色。

因此它应该水平显示图标(颜色),图标应该是可点击的。到目前为止,我只设法制作一份垂直清单。

如果可能的话,我想用XML来做这件事。

1 个答案:

答案 0 :(得分:0)

ActionBar并非针对此类用例而设计。 ActionBar按钮用于替换可在旧设备(HC / ICS前)上使用单独的硬件按钮触发的旧选项菜单。当没有足够的空间显示所有按钮(Android框架自动处理)时,会使用您在草图中绘制的溢出按钮(带有3个点的按钮),这样就会在溢出菜单中分组。覆盖这种行为是一个坏主意(如果可能的话)。

相反,您应该考虑另一种方法:将一个ActionButton添加到ActionBar中,以处理颜色选择器。单击此按钮时,最佳解决方案是显示AlertDialog(您可以在此处轻松插入显示所需颜色的视图),因为即使按钮​​隐藏在溢出菜单中,这也会效果最佳。

或者,您可以触发PopupMenu或实现一些QuickAction来处理颜色选择器(如果您的按钮隐藏在溢出菜单中,这可能会很糟糕,并且还会导致非常混乱的UI)。