Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中更改材质DateRangePicker颜色? dateLI.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图){ MaterialDatePicker.Builder=MaterialDatePicker.Builder.dateRangePicker(); CalendarConstraints.Builder constraintsBuilder=新的CalendarConstraints.Builder(); builder.setTheme(R.style.DateRangePickerTheme); setCalendarConstraints(constraintsBuilder.build()); MaterialDatePicker-picker=builder.build(); 断言getFragmentManager()!=null; show(getFragmentManager(),picker.toString()); } });_Android_Material Design_Android Datepicker_Material Components Android_Materialdatepicker - Fatal编程技术网

如何在android中更改材质DateRangePicker颜色? dateLI.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图){ MaterialDatePicker.Builder=MaterialDatePicker.Builder.dateRangePicker(); CalendarConstraints.Builder constraintsBuilder=新的CalendarConstraints.Builder(); builder.setTheme(R.style.DateRangePickerTheme); setCalendarConstraints(constraintsBuilder.build()); MaterialDatePicker-picker=builder.build(); 断言getFragmentManager()!=null; show(getFragmentManager(),picker.toString()); } });

如何在android中更改材质DateRangePicker颜色? dateLI.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图){ MaterialDatePicker.Builder=MaterialDatePicker.Builder.dateRangePicker(); CalendarConstraints.Builder constraintsBuilder=新的CalendarConstraints.Builder(); builder.setTheme(R.style.DateRangePickerTheme); setCalendarConstraints(constraintsBuilder.build()); MaterialDatePicker-picker=builder.build(); 断言getFragmentManager()!=null; show(getFragmentManager(),picker.toString()); } });,android,material-design,android-datepicker,material-components-android,materialdatepicker,Android,Material Design,Android Datepicker,Material Components Android,Materialdatepicker,我想要这个输出: 我从上面的代码中得到这个输出: 在使用绿色勾号解决方案后,我得到这个输出 我提到了datepicker的风格: dateLI.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { MaterialDatePicker.Builder<Pair<L

我想要这个输出:

我从上面的代码中得到这个输出:

在使用绿色勾号解决方案后,我得到这个输出

我提到了datepicker的风格:

    dateLI.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                MaterialDatePicker.Builder<Pair<Long, Long>> builder = MaterialDatePicker.Builder.dateRangePicker();
                CalendarConstraints.Builder constraintsBuilder = new CalendarConstraints.Builder();
                builder.setTheme(R.style.DateRangePickerTheme);
                builder.setCalendarConstraints(constraintsBuilder.build());
                MaterialDatePicker  picker = builder.build();
                assert getFragmentManager() != null;
                picker.show(getFragmentManager(), picker.toString());

            }
        });

@样式/自定义\材料Calendar.Fullscreen
水平的
假的

由于您使用的是
主题,因此必须在应用程序主题中添加以下属性:

    <style name="DateRangePickerTheme" parent="Theme.MaterialComponents.Light.DarkActionBar.Bridge">

        <item name="materialCalendarStyle">@style/Custom_MaterialCalendar.Fullscreen</item>
        <item name="android:orientation">horizontal</item>
        
    </style>


     <style name="Custom_MaterialCalendar.Fullscreen" parent="@style/Widget.MaterialComponents.MaterialCalendar.Fullscreen">
        <item name="android:windowFullscreen">false</item>
        
    </style>
其中:

builder.setTheme(R.style.CustomThemeOverlay_MaterialCalendar_Fullscreen)

`
@style/ThemeOverlay.MaterialComponents.MaterialCalendar.Fullscreen`

试试这个….

实际上你不必使用这一行:

 `<style name="DateRangePickerTheme"parent="Theme.MaterialComponents.Light.DarkActionBar.Bridge">
    <item name="materialCalendarFullscreenTheme">@style/ThemeOverlay.MaterialComponents.MaterialCalendar.Fullscreen</item></style>`
您可以通过以下方式设置应用程序主题:

builder.setTheme(R.style.CustomThemeOverlay_MaterialCalendar_Fullscreen)
    <!-- Base application theme. -->
<style name="AppTheme" parent="Theme.MaterialComponents.Light.Bridge">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorSecondary">@color/colorSecondary</item>

    <!-- Picker styles and themes. -->
    <item name="materialCalendarStyle">@style/Widget.MaterialComponents.MaterialCalendar</item>
    <item name="materialCalendarFullscreenTheme">@style/CustomThemeOverlay_MaterialCalendar_Fullscreen</item>
    <item name="materialCalendarTheme">@style/ThemeOverlay.MaterialComponents.MaterialCalendar</item>
</style>

@颜色/原色
@彩色/彩色次级
@样式/Widget.MaterialComponents.MaterialCalendar
@样式/自定义屏幕全屏显示材料日历
@style/ThemeOverlay.MaterialComponents.MaterialCalendar
然后,通过以下方式设置Custom Themeo Overlay_MaterialCalendar_全屏:

builder.setTheme(R.style.CustomThemeOverlay_MaterialCalendar_Fullscreen)
    <!-- Base application theme. -->
<style name="AppTheme" parent="Theme.MaterialComponents.Light.Bridge">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorSecondary">@color/colorSecondary</item>

    <!-- Picker styles and themes. -->
    <item name="materialCalendarStyle">@style/Widget.MaterialComponents.MaterialCalendar</item>
    <item name="materialCalendarFullscreenTheme">@style/CustomThemeOverlay_MaterialCalendar_Fullscreen</item>
    <item name="materialCalendarTheme">@style/ThemeOverlay.MaterialComponents.MaterialCalendar</item>
</style>

@颜色/你的颜色
@颜色/你的颜色

就这样。生成器将自动设置为应用程序的主题,其中日历主题设置为设计主题。只有当我在应用程序中使用不同的日历(每个日历有不同的主题)时,我才会使用
setTheme

好的,我更改了,但是我如何更改日期选择器的颜色,就像我在问题中附加选择器一样?我有黑白日期选择器。@aartifoxdeveloper检查更新的答案。颜色基于应用程序主题中定义的
colorPrimary
colorOnPrimary
colorOnPrimary
。您可以覆盖
自定义主题的全屏显示\u MaterialCalendar\u
中的主题。您对我的问题中附带的图像有什么想法吗?如何将此日期选择器与日期的编辑文本一起附加
    <!-- Base application theme. -->
<style name="AppTheme" parent="Theme.MaterialComponents.Light.Bridge">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorSecondary">@color/colorSecondary</item>

    <!-- Picker styles and themes. -->
    <item name="materialCalendarStyle">@style/Widget.MaterialComponents.MaterialCalendar</item>
    <item name="materialCalendarFullscreenTheme">@style/CustomThemeOverlay_MaterialCalendar_Fullscreen</item>
    <item name="materialCalendarTheme">@style/ThemeOverlay.MaterialComponents.MaterialCalendar</item>
</style>
    <style name="CustomThemeOverlay_MaterialCalendar_Fullscreen"
    parent="@style/ThemeOverlay.MaterialComponents.MaterialCalendar.Fullscreen">
    <item name="colorPrimary">@color/yourcolor</item>
    <item name="colorOnSurface">@color/yourcolor</item>
</style>