Android 之 日期选择器

首先摘抄一段关于日期选择器的属性以及效果图(在普通布局上显示的)

日期选择器常用属性 :

-- 显示日历 : android:calendarViewShown, 是否显示CalendarView日历组件;

-- 选择最后 : android:endYear, 该选择器是否允许选择最后一年;

-- 最大日期 : android:maxDate, 设置日期选择器的最大日期, 格式 mm/dd/yyyy;

-- 最小日期 : android:minDate, 设置日期选择器的最小日期, 格式 mm/dd/yyyy;

-- 选择组件 : android:spinnerShown, 是否显示Spinner组件;

-- 选择首年 : android:startYear, 是否允许选开始的年

效果图  :

Android 之 日期选择器_第1张图片

 

 http://www.2cto.com/kf/201401/273330.html


下面我利用日期选择器,在对话框中实现它

大致就是在标题栏和按钮之间显示View

如下

布局dialog_date.xml

<?xml version="1.0" encoding="utf-8"?>
<DatePicker xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/dialog_date_datePicker"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:calendarViewShown="false">
</DatePicker>


Fragment DatePickerFragment.java

public class DatePickerFragment extends DialogFragment {
    @NonNull
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {

        View v=getActivity().getLayoutInflater().inflate(R.layout.dialog_date,null);

        return new AlertDialog.Builder(getActivity()).setView(v).setTitle(R.string.date_picker_title).setPositiveButton(android.R.string.ok,null).create();
    }
}


通过按钮显示,部分程序

mDateButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentManager fm=getActivity().getSupportFragmentManager();
                DatePickerFragment dialog=new DatePickerFragment();
                dialog.show(fm,DIALOG_DATE);
            }
        });

大致如下所示



你可能感兴趣的:(Android 之 日期选择器)