22

ここに画像の説明を入力私はアンドロイドアプリケーションに取り組んでいます。サポートされているアクション バーを実装しました。オプション メニュー項目を常に表示したいです。しかし、それは表示されていません。ドロップダウンメニューに表示されています。以下に示すメニュー項目の私のコード。

<item
    android:id="@+id/action_settings"
    android:icon="@drawable/add_post"
    android:title="@string/action_settings"

    />

ActionBar アクティビティのコードを以下に示します。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return super.onCreateOptionsMenu(menu);
}

どんな助けでも大歓迎です。

4

5 に答える 5

45

ActionBarを使用する場合、次のAppCompatようにレイアウトを変更する必要があります。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto" >
    <item
        android:id="@+id/action_settings"
        android:icon="@drawable/add_post"
        android:title="@string/action_settings"
        app:showAsAction="always" />
</menu>  

showAsAction属性は、カスタム プレフィックスでのみ機能します。ドキュメントを参照してください。それによると:

上記の showAsAction 属性は、タグで定義されたカスタム名前空間を使用していることに注意してください。これは、サポート ライブラリで定義された XML 属性を使用する場合に必要です。これらの属性は、古いデバイスの Android フレームワークには存在しないためです。

お役に立てれば。

于 2014-03-07T06:55:42.487 に答える
28

ドキュメントから、またはにshowAsAction属性を 追加する必要がありますalwaysifRoom

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <!-- Search, should appear as action button -->
    <item android:id="@+id/action_search"
          android:icon="@drawable/ic_action_search"
          android:title="@string/action_search"
          android:showAsAction="ifRoom" />
    <!-- Settings, should always be in the overflow -->
    <item android:id="@+id/action_settings"
          android:title="@string/action_settings"
          android:showAsAction="never" />
</menu>
于 2014-03-07T06:48:32.277 に答える
8

android:showAsActionAndroid メニューの xml ファイルでプロパティのさまざまな値を使用できます。

アクションバーに常に表示されるメニューを表示するには、android:showAsAction="always"..

使用することもできますandroid:showAsAction="ifRoom"が、常にアクションバーにメニューが表示されるわけではありませんが、さまざまな画面サイズに応じて表示されます。

編集済み

参考:アクションバーにメニュー項目が表示されない

以下のコードで試してください..

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto" >
    <item
        android:id="@+id/menu_lang"
        app:showAsAction="always" <!-- app:showAsAction="ifRoom" -->
        android:title="@string/menu_lang"
        android:icon="@android:drawable/ic_input_lang"/>
</menu>

それがあなたを助けることを願っています.. !!!

于 2014-03-07T06:50:14.480 に答える