+
+ public void showDateTimePickerDialog(final View v) {
+ dateTimeTextView=(TextView) v;
+ if(v.getId()==R.id.date_start || v.getId()==R.id.date_end || v.getId() == R.id.repeat_until){
+ final String[] parts = dateTimeTextView.getText().toString().split("-");
+ final DatePickerFragment fragment = new DatePickerFragment();
+ final Bundle args = new Bundle();
+ args.putInt(DatePickerFragment.ARGUMENT_YEAR, Integer.parseInt(parts[0]));
+ args.putInt(DatePickerFragment.ARGUMENT_MONTH, Integer.parseInt(parts[1]));
+ args.putInt(DatePickerFragment.ARGUMENT_DAY, Integer.parseInt(parts[2]));
+ fragment.setArguments(args);
+ fragment.show(getFragmentManager(), "datePicker");
+ } else {
+ final String[] parts = dateTimeTextView.getText().toString().split(":");
+ final TimePickerFragment fragment = new TimePickerFragment();
+ final Bundle args = new Bundle();
+ args.putInt(TimePickerFragment.ARGUMENT_HOUR, Integer.parseInt(parts[0]));
+ args.putInt(TimePickerFragment.ARGUMENT_MINUTE, Integer.parseInt(parts[1]));
+ fragment.setArguments(args);
+ fragment.show(getFragmentManager(), "timePicker");
+ }
+ }
+
+ @Override
+ public void onTimeSet(final TimePicker picker, final int hour, final int minute) {
+ dateTimeTextView.setText(String.format("%02d:%02d",hour,minute));
+ if(dateTimeTextView.getId() == R.id.time_start)
+ ((TextView)findViewById(R.id.time_end)).setText(String.format("%2d:%2d",hour,minute));
+ }
+
+ @Override
+ public void onDateSet(final DatePicker picker, final int year, final int monthOfYear, final int dayOfMonth) {
+ final Calendar calendar=new GregorianCalendar(year, monthOfYear, dayOfMonth);
+ dateTimeTextView.setText(Utils.formatDate(year, monthOfYear, dayOfMonth));
+ //calendar.add(Calendar.DAY_OF_MONTH, 1);
+ if(dateTimeTextView.getId() == R.id.date_start)
+ ((TextView)findViewById(R.id.date_end)).setText(Utils.formatDate(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)));
+ }