All Projects → tizisdeepan → Eventscalendar

tizisdeepan / Eventscalendar

Licence: apache-2.0
Events Calendar is a user-friendly library that helps you achieve a cool Calendar UI with events mapping. You can customise every pixel of the calendar as per your wish and still achieve in implementing all the functionalities of the native android calendar in addition with adding dots to the calendar which represents the presence of an event on the respective dates. It can be done easily, you are just a few steps away from implementing your own badass looking Calendar for your very own project!

Programming Languages

java
68154 projects - #9 most used programming language
kotlin
9241 projects

Projects that are alternatives of or similar to Eventscalendar

Recyclercalendarandroid
A simple DIY library to generate your own custom Calendar View using RecyclerView, written in Kotlin
Stars: ✭ 83 (-55.85%)
Mutual labels:  calendar, calendar-view, calendar-component
Xamarin.plugin.calendar
Calendar plugin for Xamarin.Forms
Stars: ✭ 159 (-15.43%)
Mutual labels:  calendar, calendar-view, calendar-component
Calendarview
Android上一个优雅、万能自定义UI、仿iOS、支持垂直、水平方向切换、支持周视图、自定义周起始、性能高效的日历控件,支持热插拔实现的UI定制!支持标记、自定义颜色、农历、自定义月视图各种显示模式等。Canvas绘制,速度快、占用内存低,你真的想不到日历居然还可以如此优雅!An elegant, highly customized and high-performance Calendar Widget on Android.
Stars: ✭ 7,998 (+4154.26%)
Mutual labels:  calendar, calendar-view, calendar-component
Calendarview
An Easy to Use Calendar for iOS (Swift 5.0)
Stars: ✭ 429 (+128.19%)
Mutual labels:  calendar, calendar-view, calendar-component
Primedatepicker
PrimeDatePicker is a tool that provides picking a single day, multiple days, and a range of days.
Stars: ✭ 292 (+55.32%)
Mutual labels:  calendar, calendar-view, calendar-component
Customizablecalendar
CustomizableCalendar is a library that allows you to create your calendar, customizing UI and behaviour
Stars: ✭ 214 (+13.83%)
Mutual labels:  calendar, calendar-view, calendar-component
Yycalendar
Simple and Clear Calendar
Stars: ✭ 46 (-75.53%)
Mutual labels:  calendar, calendar-view, calendar-component
GCCalendar
A customizable calendar view for iOS 9+ written in Swift.
Stars: ✭ 53 (-71.81%)
Mutual labels:  calendar, calendar-component, calendar-view
Cvcalendar
A custom visual calendar for iOS 8+ written in Swift (>= 4.0).
Stars: ✭ 3,435 (+1727.13%)
Mutual labels:  calendar, calendar-view, calendar-component
Calendar Ios
Calendar View
Stars: ✭ 154 (-18.09%)
Mutual labels:  calendar, calendar-view, calendar-component
Peppy Calendarview
Simple and fast Material Design calendar view for Android.
Stars: ✭ 30 (-84.04%)
Mutual labels:  calendar, calendar-view
Calendarview2
Calendar view for Android. Pretty.
Stars: ✭ 72 (-61.7%)
Mutual labels:  calendar, calendar-view
Vacalendar
Custom Calendar for iOS in Swift
Stars: ✭ 184 (-2.13%)
Mutual labels:  calendar, calendar-component
Kvkcalendar
A most fully customization calendar and timeline library for iOS 📅
Stars: ✭ 160 (-14.89%)
Mutual labels:  calendar, calendar-view
Table calendar
Highly customizable, feature-packed Flutter Calendar with gestures, animations and multiple formats
Stars: ✭ 897 (+377.13%)
Mutual labels:  calendar, calendar-view
Vue Calendar
🏆 基于 vue 2.0 开发的轻量,高性能日历组件
Stars: ✭ 828 (+340.43%)
Mutual labels:  calendar, calendar-component
Kotlin Agendacalendarview
Android calendar library provides easy to use widget with events
Stars: ✭ 81 (-56.91%)
Mutual labels:  calendar, calendar-view
React Native Persian Calendar Picker
Persian Calendar Picker Component for React Native
Stars: ✭ 83 (-55.85%)
Mutual labels:  calendar, calendar-component
Flutterweekview
Displays a highly customizable week view (or day view) which is able to display events, to be scrolled, to be zoomed-in & out and a lot more !
Stars: ✭ 130 (-30.85%)
Mutual labels:  calendar, calendar-view
Aircalendarview
Airbnb APP CalendarView
Stars: ✭ 96 (-48.94%)
Mutual labels:  calendar, calendar-view

Events Calendar

License

Single Selection Mode Range Selection Mode Multiple Selection Mode
Single Selection Mode Range Selection Mode Multiple Selection Mode

What is Events Calendar?

Events Calendar is a user-friendly library that helps you achieve a cool Calendar UI with events mapping. You can customise every pixel of the calendar as per your wish and still achieve in implementing all the functionalities of the native android calendar in addition with adding dots to the calendar which represents the presence of an event on the respective dates. Events Calendar also has multi-lingual support. You are just a few steps away from implementing your own badass looking Calendar for your very own project!

Implementation

[1] In your app module gradle file

dependencies {
    implementation 'com.github.tizisdeepan:eventscalendar:1.6.1'
}

[2] In your project level gradle file

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

[3] Use EventsCalendar in your layout.xml

<com.events.calendar.views.EventsCalendar
    android:id="@+id/eventsCalendar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#000000"
    android:overScrollMode="never"
    app:datesTextSize="16sp"
    app:eventDotColor="#ff0000"
    app:isBoldTextOnSelectionEnabled="true"
    app:monthTitleColor="#ffffff"
    app:monthTitleTextSize="16sp"
    app:primaryTextColor="#c4c4c4"
    app:secondaryTextColor="#666666"
    app:selectedTextColor="#000000"
    app:selectionColor="#ffe600"
    app:weekHeaderColor="#c6c6c6"
    app:rangeSelectionColor="#ffe600"
    app:rangeSelectionStartColor="#c1ae01"
    app:rangeSelectionEndColor="#c1ae01"
    app:weekHeaderTextSize="16sp" />

[4] Implement EventCalendar.Callback on your Activity/ Fragment

class MainActivity : AppCompatActivity(), EventsCalendar.Callback {
    ...
    override fun onDayLongPressed(selectedDate: Calendar?) {
        Log.e("LONG", "CLICKED")
    }
    
    override fun onMonthChanged(monthStartDate: Calendar?) {
        Log.e("MON", "CHANGED")
    }

    override fun onDaySelected(selectedDate: Calendar?) {
        Log.e("SHORT", "CLICKED")
    }
}

[5] Create instances and set default values for the EventsCalendar in your Activity/ Fragment

eventsCalendar.setSelectionMode(eventsCalendar.MULTIPLE_SELECTION) //set mode of Calendar
              .setToday(today) //set today's date [today: Calendar]
              .setMonthRange(start, end) //set starting month [start: Calendar] and ending month [end: Calendar]
              .setWeekStartDay(Calendar.SUNDAY, false) //set start day of the week as you wish [startday: Int, doReset: Boolean]
              .setCurrentSelectedDate(today) //set current date and scrolls the calendar to the corresponding month of the selected date [today: Calendar]
              .setDatesTypeface(typeface) //set font for dates
              .setDateTextFontSize(16f) //set font size for dates
              .setMonthTitleTypeface(typeface) //set font for title of the calendar
              .setMonthTitleFontSize(16f) //set font size for title of the calendar
              .setWeekHeaderTypeface(typeface) //set font for week names
              .setWeekHeaderFontSize(16f) //set font size for week names
              .setCallback(this) //set the callback for EventsCalendar
              .addEvent(c) //set events on the EventsCalendar [c: Calendar]
              .disableDate(dc) //disable a specific day on the EventsCalendar [c: Calendar]
              .disableDaysInWeek(Calendar.SATURDAY, Calendar.SUNDAY) //disable days in a week on the whole EventsCalendar [varargs days: Int]
              .build()

[6] You can change selection mode of the calendar as you wish

eventsCalendar.setSelectionMode(eventsCalendar.SINGLE_SELECTION)

Available Selection modes are,

  1. SINGLE_SELECTION -> can select single day at a time
  2. RANGE_SELECTION -> can select range of days at a time
  3. MULTIPLE_SELECTION -> can select multiple days at a time (not necessary that the selected days be consequtive)

Documentation

XML Kotlin/Java Description
app:primaryTextColor setPrimaryTextColor(color: Int) Primary Text color of the calendar (selectable dates)
app:secondaryTextColor setSecondaryTextColor(color: Int) Secondary Text color of the calendar (disabled dates)
app:selectedTextColor setSelectedTextColor(color: Int) Text color of the Selected date
app:selectionColor setSelectionColor(color: Int) Color for the Selection Circle
app:rangeSelectionColor setRangeSelectionColor(color: Int) Color for the Selection Background
app:rangeSelectionStartColor setRangeSelectionStartColor(color: Int) Color for the Range Start Selection Background
app:rangeSelectionEndColor setRangeSelectionEndColor(color: Int) Color for the Range End Selection Background
app:weekHeaderColor setWeekHeaderColor(color: Int) Text color for the Week Header labels
app:weekHeaderTextSize setWeekHeaderFontSize(size: Float) Text size for the Week Header labels
app:datesTextSize setDateTextFontSize(size: Float) Text size for the Date labels
app:monthTitleColor setMonthTitleColor(color: Int) Text color for the Month Title in the calendar view
app:monthTitleTextSize setMonthTitleFontSize(size: Float) Text size for the Month Title in the calendar view
app:eventDotColor setEventDotColor(color: Int) Color for the Event Dots marked in the calendar view
app:isBoldTextOnSelectionEnabled setIsBoldTextOnSelectionEnabled(isEnabled: Boolean) Sets whether the dates should be highlighted or not

Voila! You have implemented an awesome Events Calendar for your Android Project now!

Developed By

Follow me on Twitter Add me to Linkedin
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].