[embedyt] https://www.youtube.com/watch?v=AN6UNJ-UC54[/embedyt]
Links & Dependenciesactivity_main.xmlMainActivity.java
Library with installation instructions:
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.codinginflow.timesquareexample.MainActivity"> <com.squareup.timessquare.CalendarPickerView android:id="@+id/calendar" android:layout_width="match_parent" android:layout_height="match_parent"/> </android.support.constraint.ConstraintLayout>
package com.codinginflow.timesquareexample; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast; import com.squareup.timessquare.CalendarPickerView; import java.text.DateFormat; import java.util.Calendar; import java.util.Date; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Date today = new Date(); Calendar nextYear = Calendar.getInstance(); nextYear.add(Calendar.YEAR, 1); CalendarPickerView datePicker = findViewById(R.id.calendar); datePicker.init(today, nextYear.getTime()) .inMode(CalendarPickerView.SelectionMode.RANGE) .withSelectedDate(today); datePicker.setOnDateSelectedListener(new CalendarPickerView.OnDateSelectedListener() { @Override public void onDateSelected(Date date) { //String selectedDate = DateFormat.getDateInstance(DateFormat.FULL).format(date); Calendar calSelected = Calendar.getInstance(); calSelected.setTime(date); String selectedDate = "" + calSelected.get(Calendar.DAY_OF_MONTH) + " " + (calSelected.get(Calendar.MONTH) + 1) + " " + calSelected.get(Calendar.YEAR); Toast.makeText(MainActivity.this, selectedDate, Toast.LENGTH_SHORT).show(); } @Override public void onDateUnselected(Date date) { } }); } }