3

我的应用程序的基本主题是:

<style name="AppTheme" parent="@android:style/Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
        <item name="android:actionBarTabBarStyle">@style/MyActionBarTabBar</item>
        <item name="android:actionBarTabStyle">@style/MyActionBarTabView</item>
        <item name="android:popupMenuStyle">@style/MyMenu</item>
        <!--<item name="android:actionBarStyle">@style/window_action_bar_style</item>-->
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>

我想将此主题应用于一项活动。

<style name="AppTheme" parent="Theme.AppCompat.Light">
</style>

但是,当我这样做时,我无法访问该活动中的 SwitchCompat 小部件:

<android.support.v7.widget.SwitchCompat/>

我在这里做错了什么?任何建议或解决方案将不胜感激。当我尝试覆盖特定活动中的基本主题并尝试访问 SwitchCompat 小部件时,就会出现问题。我的项目对于我来说已经相当大了,因为我必须更改整个应用程序的基本主题,因为我将不得不对 ActionBars 和其他视图进行更改。如何解决?

4

1 回答 1

13

只需在 AndroidManifest.xml 中使用您的自定义主题

<activity
    android:name=".SignupActivity"
    android:label="@string/title_activity_signup"
    android:theme="@style/SignupTheme">
</activity>
于 2015-03-19T06:14:46.983 回答