Gelöst ist das Problem!
Statt die Mühe des Stylen des Dialogfelds zu gehen, habe ich AlertDialog
verwendet und das Layout aufgebläht, das die DatePicker
enthält.
datepicker.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<DatePicker
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/daily_datepicker"
android:layout_centerInParent="true"
android:calendarViewShown="false"
android:datePickerMode="spinner"/>
</RelativeLayout>
und im Code-behind ...
public AlertDialog.Builder displayDailyOverviewDialog() {
AlertDialog.Builder dialog = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View dialogView = inflater.inflate(R.layout.datepicker, null);
dialog.setTitle("Set Daily Overview");
dialog.setView(dialogView);
DatePicker dp = (DatePicker) dialogView.findViewById(R.id.daily_datepicker);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
dp.setMinDate(calendar.getTimeInMillis());
dp.setMaxDate(new Date().getTime());
dp.findViewById(Resources.getSystem().getIdentifier("month", "id", "android")).setVisibility(View.GONE);
dp.findViewById(Resources.getSystem().getIdentifier("year", "id", "android")).setVisibility(View.GONE);
dialog.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.create();
return dialog;
}