ActionbarSherlock不包括Action Bar的"溢出"部分(在Android 2.1上)。

5
我将翻译为:

我正在开发一个基于Android 2.1 API 7的应用程序。为了实现操作栏,我正在使用ActionbarSherlock库。

使用Sherlock库一切都很顺利,我可以在项目中使用以下代码实现操作栏。

res/menu/action_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:id="@+id/new_payment_1"
          android:title="@string/new_payment"       
          />    

    <item 
          android:id="@+id/label_1"
          android:icon="@drawable/ic_launcher"
          android:showAsAction="always"/>

    <item 
          android:id="@+id/label_2"
          android:title="text2"
          android:showAsAction="always"/>

    <!-- overflow section of action bar -->
    <item android:title="title2"/>

    <item android:title="title3"/>

    <item android:title="title4"/>

</menu>

在我的Activity类中:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
   MenuInflater inflater = getMenuInflater();
   inflater.inflate(R.menu.action_menu, menu);
   return true;
}

我使用上述代码成功获得了操作栏,在Android 3.2平台上没有任何问题。但是问题是,如果我在Android 2.1平台上运行我的应用程序,则操作栏没有溢出部分为什么?在旧的Android平台上使用Sherlock库时有人经历过相同的问题吗?(P.S. 操作栏的“溢出部分”是操作栏的最右边隐藏一些项目的部分,例如弹出菜单。更多信息请查看此处
2个回答

10

它使用本机选项菜单作为溢出菜单,就像带有硬件菜单键的冰激凌三明治手机一样。

在 Android 4.0 以下的设备上强制将溢出操作项放置在操作栏上将是 ActionBarSherlock 4 版本的特性。


谢谢提供信息。你知道如果我切换到使用ActionbarCompat,那么在3.2之前的设备上溢出操作是否会显示在操作栏上? - Mellon
不,它使用相同的技术。 - Jake Wharton
@ Jake,有没有办法让我的应用程序在3.2以下的设备上具有溢出操作(同时在3.2+设备上使用本机操作栏组件)? - Mellon
不是版本3,而是版本4将支持此功能。 - Jake Wharton
谢谢,那么第一版发布在哪里可以获取?今晚应该会发布吧?我可以在官网上找到v4,是在3月7日吗? - Mellon
显示剩余6条评论

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接