11package com.shahzadafridi.sample
22
3+ import android.app.Dialog
4+ import android.content.Context
35import android.graphics.Color
6+ import android.graphics.drawable.ColorDrawable
47import android.os.Bundle
58import android.util.Log
9+ import android.view.Gravity
610import android.view.View
11+ import android.view.Window
12+ import android.view.WindowManager
13+ import android.widget.ImageView
714import android.widget.Toast
815import androidx.appcompat.app.AppCompatActivity
16+ import com.shahzadafridi.calendarview.CalendarView
17+ import com.shahzadafridi.calendarview.CalendarViewDialog
918import com.shahzadafridi.calendarview.CalenderViewInterface
1019import com.shahzadafridi.sample.databinding.ActivityMainBinding
1120import java.text.SimpleDateFormat
@@ -14,23 +23,36 @@ import java.util.*
1423class MainActivity : AppCompatActivity () {
1524
1625 lateinit var binding: ActivityMainBinding
26+ var dialog: CalendarViewDialog ? = null
1727
1828 override fun onCreate (savedInstanceState : Bundle ? ) {
1929 super .onCreate(savedInstanceState)
2030 binding = ActivityMainBinding .inflate(layoutInflater)
2131 setContentView(binding.root)
2232
23- // Fake Event
33+ setUpCalendarView(binding.calendarView)
34+ }
35+
36+ fun showDialogCalendar (view : View ) {
37+ dialog = CalendarViewDialog (this )
38+ dialog!! .setCancelable(false )
39+ dialog!! .show()
40+ setUpCalendarView(dialog!! .getCalendarView())
41+ }
42+
43+ private fun setUpCalendarView (calendarView : CalendarView ) {
44+ // Fake Events
2445 val events = HashSet <Calendar >()
25- var c1 = Calendar .getInstance()
46+ val c1 = Calendar .getInstance()
2647 for (i in 15 .. 20 ){
2748 c1.set(Calendar .DAY_OF_MONTH ,i)
2849 events.add(Calendar .getInstance().apply {
2950 this .time = c1.time
3051 })
3152 }
3253
33- binding.calendarView.builder()
54+ // Setup CalendarView.
55+ calendarView.builder()
3456 .withYearPanel(" yyyy" ,R .color.black,42 ,R .font.titillium_web_semibold)
3557 .withBackButton(true ,R .drawable.ic_up_round)
3658 .withMonthPanel(
@@ -58,8 +80,8 @@ class MainActivity : AppCompatActivity() {
5880 .withEvents(events, R .color.green)
5981 .buildCalendar()
6082
61- // assign event handler
62- binding. calendarView.setEventHandler(object : CalenderViewInterface .EventHandler {
83+ // CalendarView event handler
84+ calendarView.setEventHandler(object : CalenderViewInterface .EventHandler {
6385
6486 override fun onDayClick (view : View ? , date : Date , position : Int ) {
6587 val df = SimpleDateFormat .getDateInstance()
@@ -75,6 +97,7 @@ class MainActivity : AppCompatActivity() {
7597
7698 override fun onBackClick (view : View ? ) {
7799 Log .e(" TEST" , " onBackClick" )
100+ dialog?.dismiss()
78101 }
79102
80103 override fun onMonthClick (view : View ? , month : String , position : Int ) {
@@ -83,4 +106,5 @@ class MainActivity : AppCompatActivity() {
83106 }
84107 })
85108 }
109+
86110}
0 commit comments