Android MaterialDatePicker布局问题

问题描述 投票:0回答:1

我正在开发一个需要获取用户生日的应用程序,我已经用DatePickerDialogFragment做了,但现在我想用Material Design做,所以我找到了一个方法,用这个库创建一个日期选择器对话框。

private MaterialDatePicker<Long> materialDatePicker;
...
MaterialDatePicker.Builder<Long> builder = MaterialDatePicker.Builder.datePicker();
        builder.setTitleText(getResources().getString(R.string.birthday_it));
        builder.setTheme(R.style.ThemeOverlay_MaterialComponents_MaterialCalendar);

        materialDatePicker = builder.build();

然后用一个按钮来显示它

    birthdayButton.setOnClickListener(view -> {
        materialDatePicker.show(getSupportFragmentManager(), "DATE_PICKER");
    });

这样做没有问题,我的确可以选择我的日期等等,但是在显示时,它看起来是这样的:

https:/i.stack.imgur.com60sD8.png。

https:/i.stack.imgur.comfWEGW.png。

从这两张图可以看出,当我选择一天的时候,选择器的图像没有与天数对齐,然后当我传递到对话框模式时,仍然是在之前的布局上,没有将其包裹起来。

请问我该怎么办?我找了一下,但没有找到任何解决的办法。

android android-layout material-design android-datepicker datepickerdialog
1个回答
0
投票

只要把你的应用主题改成 材料组件主题.

<style name="AppTheme" parent="Theme.MaterialComponents.*">
   ....
</style>

builder.setTheme(R.style.ThemeOverlay_MaterialComponents_MaterialCalendar); 不需要,因为它是默认主题。

© www.soinside.com 2019 - 2024. All rights reserved.