Android 在左侧的自定义操作栏视图中添加下拉列表,其中包含可检查的项

Android 在左侧的自定义操作栏视图中添加下拉列表,其中包含可检查的项,android,drop-down-menu,checkbox,android-actionbar,Android,Drop Down Menu,Checkbox,Android Actionbar,我在开发动作栏时遇到了很多问题。以下是我的需要: 我想在我的动作栏中添加一个下拉列表,由于某些自定义动作(例如动画),它使用自定义视图 必须通过图像按钮(而不是显示选定元素文本区域的微调器)访问下拉列表 允许显示下拉列表的图像按钮必须位于操作栏的左侧 出现的下拉列表必须包含可检查的项目,并且当用户检查项目时,下拉列表必须不隐藏(这允许用户一次检查多个项目) 我的应用程序必须在安卓2.3上运行(我使用的是action bar sherlock,我指定它是因为我不能在安卓2.3上使用PopupMe

我在开发动作栏时遇到了很多问题。以下是我的需要:

  • 我想在我的动作栏中添加一个下拉列表,由于某些自定义动作(例如动画),它使用自定义视图

  • 必须通过图像按钮(而不是显示选定元素文本区域的微调器)访问下拉列表

  • 允许显示下拉列表的图像按钮必须位于操作栏的左侧

  • 出现的下拉列表必须包含可检查的项目,并且当用户检查项目时,下拉列表必须不隐藏(这允许用户一次检查多个项目)

  • 我的应用程序必须在安卓2.3上运行(我使用的是action bar sherlock,我指定它是因为我不能在安卓2.3上使用PopupMenu)

通过将自定义视图(actionBar.setCustomView(…)与菜单(menuInflater.inflate(…)相结合,我成功地在操作栏中添加了一个下拉列表。我认为我的customview的代码不是很重要,以下是我菜单的代码:


使用此解决方案,我有以下问题:

  • 我无法将下拉项放在左侧(目前它位于右侧)
  • 当我选中下拉列表中的某个项目时,我的下拉列表会自动隐藏。我希望下拉列表保持其显示状态
我怎样才能实现我想要的


附言:正如你所看到的,英语不是我的母语。这些问题很难解释(即使是用我的母语),因此如果有些句子不可理解,请告诉我,我会努力改进它们。

我建议做最简单的事情:删除所有与ActionBarSherlock相关的代码,在布局中添加您自己的视图,并将其编程为动画、弹出窗口、,显示和隐藏。

感谢您的快速回答,但是,如果我能够做到这一点(创建此“特殊”下拉式弹出窗口),删除ActionBarSherlock将毫无用处!我解释说:我的自定义视图拥有一个包含按钮的自定义布局,我可以点击这些按钮做我想做的事情。所以,你的答案不能解决任何问题。如果你告诉我如何在按钮位置创建一个下拉菜单,带有我想要的可检查项,并且所有这些都与android 2.3兼容,我将接受答案:-)
<item
    android:title="test"
    android:drawable="@drawable/dropdown_icon"
    android:showAsAction="always">

    <menu>

        <item
            android:id="@+id/item1"
            android:title="item 1"
            android:checkable="true"/>

        <item
            android:id="@+id/item2"
            android:title="item 2"
            android:checkable="true"/>

        <item
            android:id="@+id/item3"
            android:title="item 3"
            android:checkable="true"/>

    </menu>

</item>