ActionBarToggleButton

时间:2017-04-03 09:01:11

标签: android android-actionbar navigation-drawer

我在使用自定义选择器 ActionBarToggleButton 时遇到问题。 我的应用程序适用于移动设备和平板电脑设备,现在我必须使其可用于电视设备。

要做到这一点,我必须添加一些自定义焦点选择器,这比默认焦点选择器更明显。

应用程序使用NavigationView进行抽屉,并在操作栏中打开按钮。行动栏中还有其他项目。

我已设法更改所有操作栏项目的选择器,但切换按钮除外:

<item name="android:actionBarItemBackground">@drawable/selectable_selector</item>

有没有办法自定义ActionToggleButton。 我不需要更改箭头 drawable ,而只需更改默认选择器的颜色。

由于

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

API 21及更多中,您只需在{strong>工具栏主题中的style.xml中撰写此项目:

<item name="colorControlHighlight">@color/xxx</item>

但在较低的API 中,首先您应该在styles.xml中编写此样式:

<style name="MyToolbarTheme.Navigation" parent="@android:style/Widget">
    <item name="android:background">@drawable/selector_items</item>
    <item name="android:scaleType">center</item>
    <item name="android:minWidth">56.0dip</item>
</style>

然后将此项添加到工具栏主题

<item name="actionBarItemBackground">@drawable/selector_appbar</item>
<item name="toolbarNavigationButtonStyle">@style/MyToolbarTheme.Navigation</item>

示例:

<style name="MyToolbarTheme" parent="ThemeOverlay.AppCompat.Dark">
    <item name="android:textColorPrimary">#ffffff</item>
    <item name="android:textColorSecondary">#ffffff</item>
    <item name="actionBarItemBackground">@drawable/selector_appbar</item>
    <item name="toolbarNavigationButtonStyle">@style/MyToolbarTheme.Navigation</item>
</style>

(抱歉我的英语不好)