anand kumar anand kumar - 3 months ago 19
Android Question

Change date format of the DatePickerDialog Calendar in Android

I'm using DatePickerDialog in my code. And I want to know, How to change date format of the DatePickerDialog Calendar in format dd mm yyyy.

My code is :-

public static class DatePickerDialogTheme5 extends DialogFragment implements DatePickerDialog.OnDateSetListener{

@Override
public Dialog onCreateDialog(Bundle savedInstanceState){
SimpleDateFormat sdf=new SimpleDateFormat("dd MM yyyy");
Date d=new Date();
sdf.format(d);
final Calendar calendar = Calendar.getInstance();
calendar.setTime(d);

calendar.set(calendar.YEAR,d.getYear());
calendar.set(calendar.MONTH,d.getMonth());
calendar.set(calendar.DAY_OF_MONTH,d.getDay());

int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);

DatePickerDialog datepickerdialog = new DatePickerDialog(getActivity(),
//AlertDialog.THEME_TRADITIONAL,this,day,month,year);
AlertDialog.THEME_DEVICE_DEFAULT_DARK,this,year,month,day);

return datepickerdialog;
}

public void onDateSet(DatePicker view, int year, int month, int day){

TextView textview = (TextView)getActivity().findViewById(R.id.textView1);

textview.setText(day + ":" + (month+1) + ":" + year);

}
}


I Want to show Date Picker Dialog like this

Answer

Not sure what you would like to achieve, but you could use a Calendar instance with SimpleDateFormat to format your Date according to your needs.

For example:

public void onDateSet(DatePicker view, int year, int month, int day) {
    Calendar calendar = Calendar.getInstance();
    calendar.set(year, month, day);

    SimpleDateFormat dateFormat = new SimpleDateFormat("dd:MM:yyyy");

    String dateString = dateFormat.format(calendar.getTime());

    TextView textview = (TextView)getActivity().findViewById(R.id.textView1);
    textview.setText(dateString);
}