How to count the number of days between date range picker
I am Trying but no solution for this please anyone can help me
I badly need count of days when user select date range form datepicker range then set text total count of days.
try {
String valu1 = String.valueOf(constraintsBuilder.setStart(calendar.getTimeInMillis()));
String valu2 = String.valueOf(constraintsBuilder.setEnd(calendar.getTimeInMillis()));
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MMM-yyyy");
Date date1 = simpleDateFormat.parse(valu1);
Date date2 = simpleDateFormat.parse(valu2);
long difference = Math.abs(date1.getTime() - date2.getTime());
Log.i("Testing","days" +difference);
textView.setText("days" +difference);
}
catch(Exception ex)
{
ex.printStackTrace();
}
main code is
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showDatePicker= findViewById(R.id.showDatepicker);
textView=findViewById(R.id.textView);
Calendar calendar =Calendar.getInstance(TimeZone.getTimeZone("UTC+06"));
calendar.clear();
MaterialDatePicker.Builder builder = MaterialDatePicker.Builder.dateRangePicker();
builder.setTitleText("Select Date");
final MaterialDatePicker materialDatePicker = builder.build();
showDatePicker.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
materialDatePicker.show(getSupportFragmentManager(),"DATE_PICKER");
}
});
materialDatePicker.addOnPositiveButtonClickListener(new MaterialPickerOnPositiveButtonClickListener() {
@Override
public void onPositiveButtonClick(Object selection) {
showDatePicker.setText(materialDatePicker.getHeaderText());
}
});
}
You can use something like:
MaterialDatePicker<Pair<Long, Long>> picker = builder.build();
picker.show(getSupportFragmentManager(), picker.toString());
picker.addOnPositiveButtonClickListener(new MaterialPickerOnPositiveButtonClickListener<Pair<Long, Long>>() {
@Override public void onPositiveButtonClick(Pair<Long,Long> selection) {
Long startDate = selection.first;
Long endDate = selection.second;
long msDiff = endDate - startDate;
long daysDiff = TimeUnit.MILLISECONDS.toDays(msDiff);
}
});
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.