2

我想为列表视图创建一个上下文菜单,类似于列表视图中谷歌播放音乐应用程序使用的菜单。(见截图。三角形按钮打开专辑的菜单。然后可以根据所选项目选择不同的选项。)但我也在其他应用程序中看到了这个元素。

https://lh5.ggpht.com/IvSpTcmdyUOC9GoX-x528xAzy9jEPjWCLcNcru4CBEcUNZ-YHo0y2TQHcGmuvOQ2zg

问题是我既不知道如何正确实现三角形按钮(这只是一个普通的图像按钮吗?)也不知道如何为每个条目打开该弹出窗口。

我尝试过的一种方法是使用微调器。但问题是微调器总是和其中最长的元素一样宽,而不仅仅是三角形。否则这将是一个很好的解决方案。有没有办法将微调器设置为更小的尺寸并隐藏它下方的水平线?

或者微调器是完全错误的方法,我应该以不同的方式解决这个问题?

4

2 回答 2

2

您应该使用 Button 或 ImageButton 来触发 PopupMenu。您可以使用Android Holo Colors创建背景图像。或者,Holo 默认微调器背景也可以解决问题。

单击 Button 时,您应该触发PopupMenu。Android PopupMenu 适用于 Android SDK API 11+。因此,如果您要支持较低版本,则应考虑使用HoloEverywhere等外部库。

Spinner Widget 不适合您的目的。

于 2013-02-07T05:59:36.980 回答
0

我以前没有真正使用过音乐应用程序,但我会尝试根据我从屏幕截图中的理解来回答这个问题。在我看来,出现的选项显示在一个简单的对话框中。此对话框有一个列表,可以按照此处给出的方式轻松实现。
所以,你可以做的是在列表项中包含一个Button、或ImageViewImageButton或任何其他View项,然后单击它将显示对话框。

于 2013-02-07T05:27:40.663 回答