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>

私のアクティビティクラスでは:

@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ライブラリを使用しているときに、同じ問題を経験した人はいますか??

(PSアクションバーの「オーバーフローセクション」は、ポップアップメニューのようないくつかのアイテムを非表示にするアクションバーの一番右の部分です。詳細はこちら)

4

2 に答える 2

10

アイス クリーム サンドイッチ電話がハードウェア メニュー キーで作成されるように、ネイティブ オプション メニューをオーバーフローとして使用します。

オーバーフロー アクション アイテムを 4.0 より前のデバイスのアクション バーに強制的に表示することは、ActionBarSherlock のバージョン 4 の機能になります。

于 2012-02-14T13:05:38.947 に答える
0

アイス クリーム サンドイッチ以前のデバイスのオーバーフロー メニューのサポートが ActionBarSherlock から削除されました。これについての良い議論はここにあります: ActionBarSherlock でオーバーフロー メニューを強制する

于 2013-01-05T03:29:28.237 に答える