After making change in the date ,the time will be set to 00:00:00
here is my code
public class DatePickerFragment extends DialogFragment {
private static final String ARGS_DATE="date";
public static final String EXTRA_DATE="com.example.x.criminalintent.date";
private DatePicker mDatePicker;
public static DatePickerFragment newInstance(Date date)
{
Bundle bundle=new Bundle();
bundle.putSerializable(ARGS_DATE,date);
DatePickerFragment datePickerFragment=new DatePickerFragment();
datePickerFragment.setArguments(bundle);
return datePickerFragment;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
final Date date= (Date) getArguments().getSerializable(ARGS_DATE);
Calendar calendar=Calendar.getInstance();
calendar.setTime(date);
int day=calendar.get(Calendar.DAY_OF_MONTH);
int month=calendar.get(Calendar.MONTH);
int year=calendar.get(Calendar.YEAR);
View view= LayoutInflater.from(getActivity()).inflate(R.layout.dialog_date,null);
mDatePicker= (DatePicker) view.findViewById(R.id.dialog_date_picker);
mDatePicker.init(year,month,day,null);
return new AlertDialog.Builder(getActivity())
.setView(view)
.setTitle(R.string.date_picker_title)
.setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
int year=mDatePicker.getYear();
int month=mDatePicker.getMonth();
int day=mDatePicker.getDayOfMonth();
Date date1=new GregorianCalendar(year,month,day).getTime();
sendResult(Activity.RESULT_OK,date1);
}
}).create();
}
private void sendResult(int resultCode,Date date)
{
if(getTargetFragment() == null)
{
return;
}
Intent intent=new Intent();
intent.putExtra(EXTRA_DATE,date);
getTargetFragment().onActivityResult(getTargetRequestCode(),resultCode,intent);
}
}