仿iPhone的日期时间选择器

仿iPhone的日期时间选择器

可选只选择日期,也可以同时选择时间

 

只选择日期的情况



 

同时选择日期和时间的情况 



 

 

关键代码

findViewById(R.id.selectDateButton).setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				View timepickerview=LayoutInflater.from(getContext()).inflate(
						R.layout.timepicker, null);
				ScreenInfo screenInfo = new ScreenInfo(getContext());
				wheelMain = new WheelMain(timepickerview,hasTime);
				wheelMain.screenheight = screenInfo.getHeight();
				String time = itemValue.getText().toString();
				Calendar calendar = Calendar.getInstance();
				if(JudgeDate.isDate(time, formatStr)){
					try {
						calendar.setTime(dateFormat.parse(time));
					} catch (ParseException e) {
						e.printStackTrace();
					}
				}
				
				int year = calendar.get(Calendar.YEAR);
				int month = calendar.get(Calendar.MONTH);
				int day = calendar.get(Calendar.DAY_OF_MONTH);
				int hour = calendar.get(Calendar.HOUR_OF_DAY);
				int min = calendar.get(Calendar.MINUTE);
				if(hasTime)
					wheelMain.initDateTimePicker(year,month,day,hour,min);
				else
					wheelMain.initDateTimePicker(year,month,day);
				
				new AlertDialog.Builder(context)
				.setTitle("选择时间")
				.setView(timepickerview)
				.setPositiveButton("确定", new DialogInterface.OnClickListener() {
					
					@Override
					public void onClick(DialogInterface dialog, int which) {
						itemValue.setText(wheelMain.getTime());
					}
				}).setNegativeButton("取消", null)
				.show();
			}
		});

 

WheelMain wheelMain = new WheelMain(timepickerview,hasTime);

if(hasTime)

    wheelMain.initDateTimePicker(year,month,day,hour,min);

else

    wheelMain.initDateTimePicker(year,month,day);

 

源码在附件里下载。

展开阅读全文

没有更多推荐了,返回首页