Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainActivity extends Activity {
- static final int DATE_DIALOG_ID = 1;
- private int mYear;
- private int mMonth;
- private int mDay;
- private EditText etPickADate;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- etPickADate = (EditText) findViewById(R.id.et_datePicker);
- etPickADate.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- showDialog(DATE_DIALOG_ID);
- }
- });
- final Calendar c = Calendar.getInstance();
- mYear = c.get(Calendar.YEAR);
- mMonth = c.get(Calendar.MONTH);
- }
- DatePickerDialog.OnDateSetListener mDateSetListner = new OnDateSetListener() {
- @Override
- public void onDateSet(DatePicker view, int year, int monthOfYear,
- int dayOfMonth) {
- mYear = year;
- mMonth = monthOfYear;
- mDay = dayOfMonth;
- updateDate();
- }
- };
- @Override
- protected Dialog onCreateDialog(int id) {
- switch (id) {
- case DATE_DIALOG_ID:
- /*
- * return new DatePickerDialog(this, mDateSetListner, mYear, mMonth,
- * mDay);
- */
- DatePickerDialog datePickerDialog = this.customDatePicker();
- return datePickerDialog;
- }
- return null;
- }
- protected void updateDate() {
- int localMonth = (mMonth + 1);
- String monthString = localMonth < 10 ? "0" + localMonth : Integer
- .toString(localMonth);
- String localYear = Integer.toString(mYear).substring(2);
- etPickADate.setText(new StringBuilder()
- // Month is 0 based so add 1
- .append(monthString).append("/").append(localYear).append(" "));
- showDialog(DATE_DIALOG_ID);
- }
- private DatePickerDialog customDatePicker() {
- DatePickerDialog dpd = new DatePickerDialog(this, mDateSetListner,
- mYear, mMonth, mDay);
- try {
- Field[] datePickerDialogFields = dpd.getClass().getDeclaredFields();
- for (Field datePickerDialogField : datePickerDialogFields) {
- if (datePickerDialogField.getName().equals("mDatePicker")) {
- datePickerDialogField.setAccessible(true);
- DatePicker datePicker = (DatePicker) datePickerDialogField
- .get(dpd);
- Field datePickerFields[] = datePickerDialogField.getType()
- .getDeclaredFields();
- for (Field datePickerField : datePickerFields) {
- if ("mDayPicker".equals(datePickerField.getName())
- || "mDaySpinner".equals(datePickerField
- .getName())) {
- datePickerField.setAccessible(true);
- Object dayPicker = new Object();
- dayPicker = datePickerField.get(datePicker);
- ((View) dayPicker).setVisibility(View.GONE);
- }
- }
- }
- }
- } catch (Exception ex) {
- }
- return dpd;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement