天天看点

TextView或者EditView组件加上时间选择器的联合使用

  开发中经常会遇见在一个编辑框或者文本框中选择日期,点击一个文本框弹出一个日期选择器的组件,在此基础上进行选择,废话少说,直接上代码:

    先定义两个常量,后面选择的时候会用到

private static final int dialog = 1 ;

private static final int dialog2 = 2 ;

    定义点击事件

        view.onclicklistener datatextlist = new textonclicklistener(dialog) ;

        view.onclicklistener datatext2list = new text2onclicklistener(dialog2) ;

        text.setonclicklistener(datatextlist);

text1.setonclicklistener(datatext2list) ;

    定义显示的对话框以及显示的日期

public dialog oncreatedialog(int id){

calendar calendar = calendar.getinstance() ;

dialog dialog = null ;

switch(id){

case 1 :

datepickerdialog.ondatesetlistener datatextlist = new datepickerdialog.ondatesetlistener() {

@override

public void ondateset(datepicker picker, int year, int month, int dayofmonth) {

text.settext(year+"-"+(month+1)+"-"+dayofmonth) ;

}

};

dialog = new datepickerdialog(mainactivity.this, datatextlist, calendar.get(calendar.year),

calendar.get(calendar.minute), calendar.get(calendar.day_of_month)) ;

break;

case 2 :

datepickerdialog.ondatesetlistener datatext2list = new datepickerdialog.ondatesetlistener() {

public void ondateset(datepicker pick, int year, int month, int dayofmonth) {

text1.settext(year+"-"+(month+1)+"-"+dayofmonth) ;

dialog = new datepickerdialog(mainactivity.this, datatext2list, calendar.get(calendar.year),

calendar.get(calendar.month), calendar.get(calendar.day_of_month)) ;

break ;

return dialog ;

    以下是实现点击事件显示对话框

private class textonclicklistener implements view.onclicklistener{

private int dialogid = 0;   //默认为0则不显示对话框 

        public textonclicklistener(int dialogid) { 

            this.dialogid = dialogid; 

        } 

        @override 

        public void onclick(view view) { 

            showdialog(dialogid); 

        }

private class text2onclicklistener implements view.onclicklistener{

        public text2onclicklistener(int dialogid) {