Android 中的 DatePickerDialog 呈现问题

DatePickerDialog rendering issue in Android

我正在使用以下代码显示日期选择器对话框:

DatePickerDialog dialog = new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() 
{
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) 
    {
    mDateOfJourney.set(year, monthOfYear, dayOfMonth);
    if (mDateOfJourney.after(mCalendar) || mDateOfJourney.equals(mCalendar)) 
        {
        setJourneyDateView(mDateOfJourney);
        } else {
            Toast.makeText(getActivity(), getString(R.string.invalid_date), Toast.LENGTH_SHORT).show();
        }
    }
}, mCalendar.get(Calendar.YEAR), mCalendar.get(Calendar.MONTH), mCalendar.get(Calendar.DAY_OF_MONTH));
        dialog.getDatePicker().setMinDate(mCalendar.getTimeInMillis());
        dialog.show();

此代码的输出存在一些渲染问题:显示如下:

上图中,window的背景为空。查看您应用的样式定义。你可能会在某处找到这个:

<item name="android:windowBackground">@null</item>

否则,您可能已将 window 的背景设置为 nullgetWindow().setBackgroundDrawable(null)

据我所知,唯一为您设置此属性的主题是 Theme.NoDisplay。因此,如果您不使用此主题作为基础(或按原样使用),则必须使用不同的主题。