[두리번] 프로젝트 9~10일차 회고

한상진·2021년 7월 8일
0

두리번

목록 보기
4/8
post-thumbnail


🛫캘린더 뷰 완성

두리번 프로젝트에서 가장 걱정이 많았던 캘린더 뷰를 드디어 완성했습니다!
물론 거의 대부분 도움을 받아서 만들긴 했지만..ㅠ 예쁜 커스텀 디자인이 나와서 기분이 좋았습니다.


🛬배운 점

캘린더를 만들며 컬렉션뷰에 대해서 더 자세히 알게 되었고, 특히 Select와 Deselect를 잘 이해할 수 있었습니다!

또 저희 두리번은 PR을 올리면 최소 1명에게 코드리뷰를 받고, approve를 받아야 merge를 할 수 있다는 룰이 있는데, 캘린더를 만들며 옵셔널 바인딩의 중요성을 많이 배우게 되었습니다.



🛫일정 추가 뷰 완성

여행 일정을 추가하는 뷰를 완성했습니다!


🛬배운 점

걱정이 많았던 '시간 추가하기' 버튼은 뷰 계층을 분리하는 방식으로 해결을 할 수 있었습니다.

평소 개발을 하며 뷰 계층에 대해서는 생각을 해본 적이 많지 않았는데, 이번에 일정 추가 뷰를 구현하며 계층에 대해서 많은 생각과 연습을 해보게 되는 계기가 되었습니다.

@IBAction func startTimeButtonClicked(_ sender: Any) {
        alphaView.alpha = 0.7
        alphaView.insertSubview(dateView, belowSubview: alphaView)
        let origImage = UIImage(named: "timeStartBoxline")
        let startTintedImage = origImage?.withRenderingMode(.alwaysTemplate)
        startTimeButton.setImage(startTintedImage, for: .normal)
        startTimeButton.tintColor = Colors.pointBlue.color
        startDateLabel.textColor = Colors.pointBlue.color
        startTimeLabel.textColor = Colors.black1.color

        dateView.snp.makeConstraints{ make in
            make.top.equalToSuperview().offset(290)
            make.leading.equalToSuperview().offset(26)
        }
    }

이런식으로 alpha값이 0으로 깔려있던 alphaView의 alpha값을 0.7로 올려주고, insertSubview메소드를 통해 버튼의 dateView를 올려주었습니다.

DatePicker도 처음 사용해봐서 걱정을 좀 했는데 생각보다 어렵진 않았습니다.

이후 PR에서 피드백을 받아 alphaView가 생성/소멸 될 때 다음과 같은 애니메이션을 추가했습니다.



🛫내일의 목표

이전에 완성했던 '새로운 여행 추가' 뷰와 이번에 완성한 캘린더 뷰를 플로우에 따라 폴더링을 마치고 네비게이션까지 연동할 계획입니다.
이후 '여행멤버 뷰' 작업을 진행할 예정입니다!

profile
공부방

0개의 댓글