2014-12-06 3 views
2

Я не могу получить значок, отображаемый с текстом заголовка или без него с помощью панели инструментов AppCompat. Текст заголовка выглядит отлично, но значок отсутствует.Панель инструментов AppCompat, не показывающая набор значков в меню XML

Значок и текст заголовка определены в menu.xml, используя следующий XML:

<menu xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    tools:context="ui.CreateProfileActivity"> 
    <item 
    android:id="@+id/create_profile_submit" 
    android:title="@string/create_profile_submit" 
    app:icon="@drawable/ic_done_white_24dp" 
    app:showAsAction="always"/> 
</menu> 

В моей styles.xml я поставил цвет значка, чтобы быть белым явно (фон панели инструментов синий):

<item name="actionBarIconColor">#fff</item> 

Это toolbar_actionbar.xml, который используется для отображения панели инструментов:

<android.support.v7.widget.Toolbar 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    app:theme="@style/ActionBarThemeOverlay" 
    app:popupTheme="@style/ActionBarPopupThemeOverlay" 
    android:id="@+id/toolbar_actionbar" 
    android:background="?attr/colorPrimaryDark" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

Когда я запускаю приложение в портретной или альбомной ориентации, значок не появляется.

Как получить панель инструментов либо шоу:

  1. Значок и текст
  2. только значок (см Edit Below)

EDIT: 2014.12.14

Мне удалось получить значок и только значок, чтобы показать, обновив свойство menu.xml «icon», чтобы использовать «android» вместо «app». Новый xml выглядит следующим образом:

<menu xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    tools:context="ui.CreateProfileActivity"> 
    <item 
    android:id="@+id/create_profile_submit" 
    android:title="@string/create_profile_submit" 
    android:icon="@drawable/ic_done_white_24dp" 
    app:showAsAction="always"/> 
</menu> 

Я все еще не могу получить значок И текст, который будет отображаться одновременно в портретном режиме. Он показывает как в ландшафтном режиме.

ответ

4

Получить ссылку на панели инструментов в вашей деятельности и установить значок или большинство его частей

ToolBar toolbar = (Toolbar) findViewById(R.id.toolbar_actionbar); 
toolbar.setLogo(R.drawable.yourdrawable); 
toolbar.setTitle("Your Title"); 
toolbar.setSubtitle("list"); 
toolbar.setNavigationIcon(R.drawable.drawer_icon); 

Я знаю, что это за то, что предлагается на вопрос, бух я хотел бы пролить свет на то, вы можете Попробуйте решить эту проблему.

Я надеюсь, что это поможет кому-то.

2

попробовать это меню: на панели инструментов

`

<item 
    android:id="@+id/menu_overflow" 
    android:enabled="true" 
    android:icon="@drawable/ic_menu_moreoverflow_mtrl_alpha" 
    app:showAsAction="always" 
    android:title=""> 
    <menu> 
     <item 
      android:id="@+id/action_more" 
      android:icon="@drawable/ic_more_apps" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="More apps"/> 
     <item 
      android:id="@+id/action_rate" 
      android:icon="@drawable/ic_rating" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Rate this app"/> 
     <item 
      android:id="@+id/action_feedback" 
      android:icon="@drawable/ic_feedback" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Feedback"/> 
     <item 
      android:id="@+id/action_share" 
      android:icon="@drawable/ic_share" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Share this app"/> 
    </menu> 
</item> 

`

попробовать это меню для ActionBar

`

<item 
    android:id="@+id/menu_overflow" 
    android:enabled="true" 
    android:icon="@drawable/ic_menu_moreoverflow_mtrl_alpha" 
    android:showAsAction="always" 
    android:title=""> 
    <menu> 
     <item 
      android:id="@+id/action_more" 
      android:icon="@drawable/ic_more_apps" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="More apps"/> 
     <item 
      android:id="@+id/action_rate" 
      android:icon="@drawable/ic_rating" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Rate this app"/> 
     <item 
      android:id="@+id/action_feedback" 
      android:icon="@drawable/ic_feedback" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Feedback"/> 
     <item 
      android:id="@+id/action_share" 
      android:icon="@drawable/ic_share" 
      android:orderInCategory="100" 
      android:showAsAction="never" 
      android:title="Share this app"/> 
    </menu> 
</item> 

`

Смежные вопросы