개발아 담하자

[iOS/Swift] FSCalendar 라이브러리 사용하기, 달력에 이벤트 추가하기 본문

📱 iOS

[iOS/Swift] FSCalendar 라이브러리 사용하기, 달력에 이벤트 추가하기

choidam 2020. 2. 2. 00:35

프로젝트 진행 중 달력과 달력에 이벤트 추가하는 뷰를 그려야 했는데 (달력 써본 적 없음)

다들 직접 custom 하라고 했지만 시간이 없어서 라이브러리를 찾던 중 깔끔하고 내 맘에 쏙드는 라이브러리를 찾았다 ... 💖

 

https://github.com/WenchaoD/FSCalendar

 

WenchaoD/FSCalendar

A fully customizable iOS calendar library, compatible with Objective-C and Swift - WenchaoD/FSCalendar

github.com

 

사용법도 간단하다.

 

1. pod 에 'FSCalendar' 라이브러리 설치

2. UIView 생성

3. View Class name 을 FSCalendar 로 입력

4. 확인 

 

 

 

이제 이 달력에 이벤트를 추가해보자 ‼️ (밑에 점 표시)

 

1. 이벤트 컬러 마크 색깔을 원하는 색깔로 custom 해 준다. (default = blue)

calendar.appearance.eventDefaultColor = UIColor.green
calendar.appearance.eventSelectionColor = UIColor.green   

 

2. event date 를 추가한다.

  let formatter = DateFormatter()
  formatter.locale = Locale(identifier: "ko_KR")
  formatter.dateFormat = "yyyy-MM-dd"
        
  let xmas = formatter.date(from: "2019-12-25")
  let sampledate = formatter.date(from: "2019-12-22")
  dates = [xmas!, sampledate!]

- 원하는 날짜를 dates 배열에 저장한다. 

 

3.  Extension FSCalendarDataSource

extension CalendarViewController: FSCalendarDataSource{
    func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int { 
        if self.dates.contains(date){
            return 1
        }
        return 0
    }
}

- dates 배열에 있는 날짜에 이벤트를 추가한다.

- return 갯수에 따라 날짜에 추가되는 이벤트 갯수가 달라진다. (return 2 로 했으면 이벤트 밑 표시가 두개로 된다.)

 

성공 ‼️‼️ 밑에 이벤트가 잘 추가됨을 확인할 수 있다.