【问题标题】:Configuring android date picker dialog for dark mode为暗模式配置 android 日期选择器对话框
【发布时间】:2021-03-29 02:07:50
【问题描述】:

我有一个在spinner 模式下使用的日期选择器对话框。这是日期选择器对话框使用的主题。

<style name="CustomDatePickerDialogTheme" parent="android:Theme.Material.Light.Dialog">
        <item name="android:datePickerStyle">@style/MyDatePickerStyle</item>
    </style>

    <style name="MyDatePickerStyle" parent="@android:style/Widget.Material.DatePicker">
        <item name="android:datePickerMode">spinner</item>

当我在“暗模式 = 关闭”时使用它时,它可以正常工作。但是当“暗模式=打开”时,它不会反转颜色。无论暗模式如何,对话框都是这样的

我尝试将父主题更改为Theme.AppCompat.DayNight.Dialog。现在,当“Dark Mode = on”时,对话框如下所示

如何使 DatePickeDialog(在微调器模式下)与深色模式兼容?

【问题讨论】:

    标签: android android-datepicker android-dark-theme


    【解决方案1】:

    请尝试不指定父主题,这对我有用。但是在您的主题中添加android: windowIsFloating = true,您的对话框将全屏显示。这使对话框在屏幕上居中,它变得像一个普通的对话框

    这是我的主题:

    <style name="CustomDatePickerDialogTheme">
        <item name="android:datePickerStyle">@style/MyDatePickerStyle</item>
        <item name="android:windowIsFloating">true</item>
    </style>
    
    <style name="MyDatePickerStyle" parent="@android:style/Widget.Material.DatePicker" tools:targetApi="lollipop">
        <item name="android:datePickerMode">spinner</item>
    </style>
    

    【讨论】:

      【解决方案2】:

      只需根据您的要求更改主题颜色设置,进行以下更改,如果不起作用,请发表评论。在你的父主题中做你的代码这是一般风格

      <style name="MyMaterialTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
      
          <item name="colorAccent">#FC6C2D</item>   ---> I used orange color here to display the picker dialog in orange color.
      
          <item name="android:textColorPrimary">#000000</item>
          <item name="android:textColorSecondary">#000000</item>
      
      </style>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-07
        • 1970-01-01
        • 2014-06-26
        • 1970-01-01
        • 1970-01-01
        • 2018-09-28
        • 1970-01-01
        相关资源
        最近更新 更多