Android自定义控件之日期选择控件使用详解

  

Android日期选择控件效果如下:

  

 Android自定义控件之日期选择控件使用详解

  

调用的代码:

        @OnClick (R.id.btn0)   公共空间btn0 () {   最后AlertDialog对话框=new AlertDialog.Builder(上下文)共创();   dialog.show ();   窗口窗口=dialog.getWindow ();   window.setContentView (R.layout.dialog_change_date);   窗口。setBackgroundDrawable(新ColorDrawable (0 x00000000));//处理5.0以上对话框的白边问题   window.setGravity (Gravity.BOTTOM);   最后DatePickerView DatePickerView=(DatePickerView) window.findViewById (R.id.datePickerView);//打开页面时需要选中的日期TODO   datePickerView。设置当前日期(2015、5、11);//datePickerView。设置当前日期(birthdayArray [0], birthdayArray [1], birthdayArray [2]);      最后一个int [] birthdayArray=new int [3];   datePickerView。addOnSelectedChangingListener(新DatePickerView.OnSelectedChangedListener () {   @Override   公共空间>   & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !——widget_date_picker.xml祝辞   & lt; !——注意修改页面自定义控件的包名——比;   & lt; LinearLayout xmlns: android=" http://schemas.android.com/apk/res/android "   android: layout_width=" match_parent "   android: layout_height=" wrap_content "   面向android:="水平"比;      & lt; de.bvb.rxdemo.widget.DateSelectWidget.wheelview.WheelView   android: id=癅 + id/wheelViewYear”   android: layout_width=" 0 dp”   android: layout_height=" match_parent "   android: layout_gravity="中心"   android: layout_weight=" 1 "/比;      & lt; de.bvb.rxdemo.widget.DateSelectWidget.wheelview.WheelView   android: id=癅 + id/wheelViewMonth”   android: layout_width=" 0 dp”   android: layout_height=" match_parent "   android: layout_gravity="中心"   android: layout_weight=" 1 "/比;      & lt; de.bvb.rxdemo.widget.DateSelectWidget.wheelview.WheelView   android: id=癅 + id/wheelViewDay”   android: layout_width=" 0 dp”   android: layout_height=" match_parent "   android: layout_gravity="中心"   android: layout_weight=" 1 "/比;      & lt;/LinearLayout>   之前            & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !——dialog_change_date.xml祝辞   & lt; !——注意修改页面自定义控件的包名——比;   & lt; LinearLayout xmlns: android=" http://schemas.android.com/apk/res/android "   android: layout_width=" match_parent "   android: layout_height=" match_parent "   android:背景=" @android:颜色/透明”   android:重力="底"   面向android:=按怪薄北?      LinearLayout & lt;   android: layout_width=" match_parent "   android: layout_height=" wrap_content "   android:背景=" @android:颜色/白”   面向android:=按怪薄北?      LinearLayout & lt;   android: layout_width=" match_parent "   android: layout_height=" 48 dp "   面向android:="水平"比;      & lt; TextView   android: id=癅 + id/tvCancel”   android: layout_width=" 0 dp”   android: layout_height=" match_parent "   android: layout_weight=" 1 "   android:背景=" # F9F9F9”   android:重力="中心"   android:文本="取消”   android:输入textColor=" # 43 aafc "/比;      & lt;视图   android: layout_width=" 1 px "   android: layout_height=" match_parent "   android:背景=" # D7D7D7 "/比;      & lt; TextView   android: id=癅 + id/tvOK”   android: layout_width=" 0 dp”   android: layout_height=" match_parent "   android: layout_weight=" 1 "   android:背景=" # F9F9F9”   android:重力="中心"   android:文本="确定”   android:输入textColor=" # 43 aafc "/比;      & lt;/LinearLayout>      & lt;视图   android: layout_width=" match_parent "   android: layout_height=" 1 px "   android:背景=" # D7D7D7 "/比;      & lt; de.bvb.rxdemo.widget.DateSelectWidget.DatePickerView   android: id=癅 + id/datePickerView”   android: layout_width=" match_parent "   android: layout_height=" wrap_content "/比;      & lt;/LinearLayout>   & lt;/LinearLayout>      之前      

3. java文件

        包de.bvb.rxdemo.widget.DateSelectWidget;      进口android.content.Context;   进口android.util.AttributeSet;   进口android.view.LayoutInflater;   进口android.view.View;   进口android.widget.LinearLayout;   进口android.widget.TextView;      进口java.util.ArrayList;      进口de.bvb.rxdemo.R;   进口de.bvb.rxdemo.widget.DateSelectWidget.wheelview.OnWheelChangedListener;   进口de.bvb.rxdemo.widget.DateSelectWidget.wheelview.OnWheelScrollListener;   进口de.bvb.rxdemo.widget.DateSelectWidget.wheelview.WheelView;   进口de.bvb.rxdemo.widget.DateSelectWidget.wheelview.adapter.AbstractWheelTextAdapter1;         公开课DatePickerView LinearLayout{延伸         私有静态最终int YEAR_MIN=1950;   私有静态最终int YEAR_MAX=2020;      私人int年=YEAR_MIN;   私人int月=1;   私人int天=1;         私人ArrayList

Android自定义控件之日期选择控件使用详解