在导航抽屉菜单项中更改开关颜色

Change Switch color in Navigation Drawer menu item

我在更改导航抽屉开关项目的颜色时遇到问题。我希望每个人都有与其动作相关的自定义颜色。

我用这样的菜单定义了我的导航抽屉:

<item
    android:title="@string/nav_drawer_services_title">
    <menu>
        <group android:checkableBehavior="none">
            <item
                android:id="@+id/Red_selector"
                android:title="@string/nav_drawer_red_title"
                app:actionLayout="@layout/switch_layout"/>
            <item
                android:id="@+id/Blue_selector"
                android:title="@string/nav_drawer_blue_title"
                app:actionLayout="@layout/switch_layout"/>
        </group>
    </menu>
</item>

我的switch_layout.xml是这样的:

<Switch
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:onClick="toggleService"
android:checkable="true"
android:checked="true"
style="@style/MyCustomSwitchTheme"
/>

我已尝试按照此处的建议更改 MyCustomSwitchThemeChange "on" color of a Switch,但切换项的颜色保持不变。

为什么我的自定义主题样式没有覆盖默认样式?我似乎无法从 colors.xmlAppTheme 中定义的 colorAccent 更改这些开关。

有人知道解决这个问题的方法吗?

编辑: 这是样式代码,很抱歉没有将其包含在 OP 中。

<style name="MyCustomSwitchTheme">
    <!-- active thumb & track color (30% transparency) -->
    <item name="colorControlActivated">#46bdbf</item>

    <!-- inactive thumb color -->
    <item name="colorSwitchThumbNormal">@color/light_gray_color</item>

    <!-- inactive track color (30% transparency) -->
    <item name="android:colorForeground">#42221f1f</item>
</style>

只需使用 android:theme="@style/MyCustomSwitchTheme"

改为style="@style/MyCustomSwitchTheme"