2016-05-02 9 views
0

私は、 いくつかのアイコンがメニューに表示されない理由を教えてください?すべてのアイコンが見えるようにするには?絵に私はメニューを描いた。Androidメニューアイコン - すべて表示されていないのですか?

enter image description here

enter image description here

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    tools:context=".MainActivity"> 

    <item //this icon is visible 
     android:id="@+id/action_add_new_group" 
     android:icon="@drawable/menu_add_group" 
     android:title="@string/action_add_new_group" 
     app:showAsAction="ifRoom|withText" /> 

    <item //this icon is visible 
     android:id="@+id/action_load_from_sd" 
     android:icon="@drawable/menu_add_dictionary" 
     android:title="@string/action_load_from_sd" 
     app:showAsAction="ifRoom|withText" /> 
    <item //this icon is NOT visible 
     android:id="@+id/action_convert_from_xls" 
     android:icon="@drawable/menu_date_sorting" 
     android:title="@string/action_convert_from_xls" 
     app:showAsAction="ifRoom|withText" /> 

    <item //this icon is NOT visible 
     android:id="@+id/action_sortting_options" 
     android:icon="@drawable/menu_date_sorting" 
     android:title="sorting" 
     app:showAsAction="ifRoom|withText"> 
     <menu> 
      <item //this icon is visible 
       android:id="@+id/action_sort_by_date" 
       android:icon="@drawable/menu_date_sorting" 
       android:title="by date" 
       app:showAsAction="ifRoom|withText" /> 
     </menu> 
    </item> 
</menu> 

感謝。

答えて

0

あなたはすべてのアイコンを表示したい場合は、alwaysの代わりに、あなたのメニューitem秒でifRoom|withTextとしてapp:showAsActionを置く必要があります。 showAsAction = "常に" になります。

+0

試しました。それは動作しません!最初のレベルのメニューで作業しない理由がいくつかあります。最初のレベルのメニューだけでなく、 – JDev

+0

あなたのアクションバーに十分なスペースがないかもしれません。小さなタイトルなどを設定してみてください。 – jaibatrik

+0

いいえ、私もそれをテストしました。空白行のアイコン。 – JDev

0

アイコンのみの手段、これを試してみてください、テキストと

​​

アイコンは、アプリのメニュー項目の

android:icon="@drawable/menu_date_sorting" 
android:title="sorting" 
app:showAsAction="always|withText" 
+0

私は試しました。それは動作しません!最初のレベルのメニューで作業しない理由がいくつかあります。最初のレベルのメニューだけでなく、 – JDev

0

アイコンを意味し、アクションバーに表示されます。しかし、OptionsMenuの中にあるとき、他のすべてのメニュー項目はアイコンを持たないでしょう。

常にshowAsAction属性を設定すると、そのメニューアイコンが常にアクションバーに表示されます。

+0

私は試しました。それは動作しません!最初のレベルのメニューで作業しない理由がいくつかあります。最初のレベルのメニューだけでなく、 – JDev

+0

タブでアプリをテストしてみてください。 showAsAction = "always"として設定した項目がactionBarに表示されます。あなたの電話機のアイコンは、アクションバーに余裕がある場合にのみ表示されます。 –

0

app:showAsAction="ifRoom|withText"app:showAsAction="always|withText"に変更するifRoomを追加すると、メニューアイテムは、アイテムが表示される十分なスペースがある場合にのみ表示されます。そして、名前の通りにalwaysが示唆すると、それは常にメニューに表示されます。

関連する問題