Collapsible-Calendar-View-Android
Collapsible CalendarView in simple calendar view which can be collapsed to save space and can be expanded when needed.
Installation
-
Gradle
Add it in your root build.gradle at the end of repositories:
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
Add the dependency in your app build.gradle
dependencies { implementation 'com.github.shrikanth7698:Collapsible-Calendar-View-Android:v1.0.0' }
-
Maven
Add the JitPack repository to your build file
<repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories>
Add the dependency
<dependency> <groupId>com.github.shrikanth7698</groupId> <artifactId>Collapsible-Calendar-View-Android</artifactId> <version>v1.0.0</version> </dependency>
Usage
Drop the Collapsible CalendarView in your XML layout as is shown below:
<com.shrikanthravi.collapsiblecalendarview.widget.CollapsibleCalendar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/calendarView">
</com.shrikanthravi.collapsiblecalendarview.widget.CollapsibleCalendar>
And then in your Activity or fragment
final CollapsibleCalendar collapsibleCalendar = findViewById(R.id.calendarView);
collapsibleCalendar.setCalendarListener(new CollapsibleCalendar.CalendarListener() {
@Override
public void onDaySelect() {
Day day = viewCalendar.getSelectedDay();
Log.i(getClass().getName(), "Selected Day: "
+ day.getYear() + "/" + (day.getMonth() + 1) + "/" + day.getDay());
}
@Override
public void onItemClick(View view) {
}
@Override
public void onDataUpdate() {
}
@Override
public void onMonthChange() {
}
@Override
public void onWeekChange(int i) {
}
});
Customization
<com.shrikanthravi.collapsiblecalendarview.widget.CollapsibleCalendar
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:primaryColor="@color/google_red"
app:textColor="@android:color/white"
app:selectedItem_textColor="@color/google_red"
app:todayItem_textColor="@android:color/white"
app:todayItem_background="@drawable/circle_white_stroke_background"
app:selectedItem_background="@drawable/circle_white_solid_background"
app:buttonLeft_drawableTintColor="@android:color/white"
app:buttonRight_drawableTintColor="@android:color/white"
app:expandIconColor="@android:color/white">
</com.shrikanthravi.collapsiblecalendarview.widget.CollapsibleCalendar>