Android 使用AppCompatDelegate.setDefaultNightMode()设置DayNight主题不适用于FragmentActivity

Android 使用AppCompatDelegate.setDefaultNightMode()设置DayNight主题不适用于FragmentActivity,android,android-fragmentactivity,theme-daynight,Android,Android Fragmentactivity,Theme Daynight,我有点困惑。我正在我的应用程序中使用DayNight主题(使用AppCompatDelegate.setDefaultNightMode()),但无法使其在我的MainActivity中工作。 main活动(扩展了FragmentActivity)看起来似乎从未设置为黑暗主题-它始终保持在光明主题 我尝试在我的主要活动中直接设置主题: @Override protected void onCreate(Bundle savedInstanceState) { AppCompatDeleg

我有点困惑。我正在我的应用程序中使用DayNight主题(使用
AppCompatDelegate.setDefaultNightMode()
),但无法使其在我的
MainActivity
中工作。
main活动
(扩展了
FragmentActivity
)看起来似乎从未设置为黑暗主题-它始终保持在光明主题

我尝试在我的主要活动中直接设置主题:

@Override
protected void onCreate(Bundle savedInstanceState) {
    AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
    super.onCreate(savedInstanceState);
    // create main activity.
}
但这是行不通的

我已经使用?attr/colorReference正确设置了布局文件中的所有颜色。有人知道这里出了什么问题吗

编辑: My styles.xml如下所示:

<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
    <!--Default typeface and colors:-->
    <item name="android:typeface">monospace</item>
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="colorAccentDarker">@color/colorAccentDarker</item>
    <item name="colorAccentDarker_80percent">@color/colorAccentDarker_80percent</item>

    <!--Show people's own wallpaper background-->
    <item name="android:windowShowWallpaper">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
</style>

单空间
@颜色/原色
@颜色/原色暗
@颜色/颜色重音
@颜色/颜色较深
@颜色/颜色更暗\u 80%
真的
@android:彩色/透明
MainActivity
(扩展了
FragmentActivity


FragmentActivity
不知道AppCompat
AppCompatDelegate
仅由
AppCompatActivity
使用,或者您必须将其用于其他活动


您可以扩展
AppCompatActivity
而不是
FragmentActivity

您可以向我们展示您的
样式.xml
AppCompatActivity
扩展
FragmentActivity