0

Я устанавливающий заказная иконку переполнения в Compat темы так:Android Переполнение Кнопки персонализированный значок не работает API, <5,0

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
<style name="AppTheme" parent="AppTheme.Base"/> 

<style name="AppTheme.Base" parent="Theme.AppCompat.Light"> 
    <item name="colorPrimary">@color/action_bar</item> 
    <item name="colorPrimaryDark">@color/status_bar</item> 
    <item name="android:windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
    <item name="android:textColorPrimary">@color/theme_red</item> 
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> 
    <item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item> 
</style> 

<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle"> 
    <item name="spinBars">true</item> 
    <item name="color">@color/theme_red</item> 
</style> 

<style name="OverflowMenuButton" parent="@style/Widget.AppCompat.Light.ActionButton.Overflow"> 
    <item name="android:src">@drawable/ic_action_overflow</item> 
</style> 

</resources> 

Я получаю следующее (желательные и правильно) результата на Nexus 5 API 5.1: enter image description here

Однако, когда я тестирую одно и то же приложение на API 4.4.4 или 4.2.2 (протестировано на Nexus 4, Xperia Z и т. Д.), В обоих случаях я не получаю значок пользовательского переполнения. Вот скриншот: enter image description here

Я использую панель инструментов из библиотеки appcompat v7: 21, но я не думаю, что проблема связана с панелью инструментов. Что я здесь делаю неправильно?

В качестве последующего вопроса я буду рад просто изменить цвет значка переполнения, сохраняя ту же форму. Является ли это возможным? Если да, то как?

+1

Вы пробовали просто добавив non-Android prefixed ' @ style/OverflowMenuButton' к вашей теме? –

+0

Нет, я этого не сделал, теперь у меня есть и все работает. :) Вы можете добавить ответ, и я приму его. Большое спасибо. – Jazib

ответ

0

В соответствии с предыдущим комментарием: похоже, вы забыли добавить версию Android с префиксом actionOverflowButtonStyle. Добавьте следующее:

<item name="actionOverflowButtonStyle">@style/OverflowMenuButton</item> 
0

сначала нужно удалить следующую строку

<item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item> 

затем добавьте следующий код

<item name="actionOverflowButtonStyle">@style/OverflowMenuButton</item> 

будет работать