@Override public void onClick(View v) { if (v == yes) { if (validate()) { if (repeatRepRadio.isChecked()) { rule.setCount(Integer.parseInt(repeatRepEdit.getText().toString())); rule.setUntil(null); } else { rule.setCount(null); rule.setUntil(DateUtil.convertDateToRRULE(repeatUntilDate.getText().toString())); } dismiss(); } } else if (v == no) { cancelClicked = true; cancel(); } else if (v == repeatRepEdit || v == repeatRepRadio || v == repeatRepRow) { repeatUntilRadio.setChecked(false); repeatRepRadio.setChecked(true); repeatRepEdit.setEnabled(true); repeatRepEdit.setFocusable(true); previousSelectedRadio = repeatRepRadio; } else if (v == repeatUntilDate || v == repeatUntilRadio || v == repeatUntilRow) { repeatRepRadio.setChecked(false); repeatUntilRadio.setChecked(true); repeatRepEdit.setEnabled(false); DatePickerDialog dialog = null; if (!StringUtils.isEmpty(repeatUntilDate.getText().toString())) { GregorianCalendar cal = DateUtil.getCalendarFromString(repeatUntilDate.getText().toString()); dialog = new DatePickerDialog( activity, datePickerListener, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH)); } else { dialog = new DatePickerDialog( activity, datePickerListener, eventDate.get(Calendar.YEAR), eventDate.get(Calendar.MONTH), eventDate.get(Calendar.DAY_OF_MONTH)); } dialog.setOnDismissListener(datePickerDismissListener); dialog.show(); } }