디테일을 더하자

Judy·2021년 9월 29일
0

1. 테이블뷰 빈 화면

테스트를 위해 계속 데이터를 넣어뒀기 때문에 인식하지 못했는데 아이폰의 갤러리를 보니 일정이 없는 날에는 '이벤트 없음'이라고 써있는걸 발견했다.

이를 보고 장소 캘린더에도 장소 정보가 없는 날에는 표시를 해야겠다고 생각했다. 기본 화면도 마찬가지로 처음 앱을 다운받으면 아무 정보가 없기 때문에 안내해줄 글씨가 필요했다.

날짜 선택 시 장소 없음 표시하기

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        if selectedName.count == 0{
            let emptyLabel = UILabel(frame: CGRect(x: 0, y: 0, width: self.view.bounds.size.width, height: self.view.bounds.size.height))
            emptyLabel.text = "장소가 없습니다."
            emptyLabel.textAlignment = NSTextAlignment.center
            tableView.backgroundView = emptyLabel
            tableView.separatorStyle = .none
            return 0
        }else{
            tableView.backgroundView = .none
            return selectedName.count
        }
    }

selectedName이 없을 때 즉, 선택한 날짜에 해당하는 장소가 없을 때 Lable을 만들어 장소 정보 없음을 표시했다.

같은 방식으로 메인 화면과 검색 화면에도 빈 화면일 때 글씨를 표시했다.


나중에 문득 Cell 구분선이 없어진걸 알았는데 알고보니

tableView.separatorStyle = .none 

이때 없앤 구분선이 계속 없는 상태라 else일 땐
tableView.separatorStyle = UITableViewCell.SeparatorStyle.singleLine

다시 구분선을 넣어줘야 했다....

없어진걸 바로 알아차리지 못한 둔한 나....



2. PlaceCell 구성 변경

기존 placeCell에는 이름과 장소 그리고 점수가 표시되었다. Cell이 적당히 꽉 차보이고 괜찮았지만 사실 장소의 주소 자체는 한 눈에 들어오는 정보도 아니고 메인에 보여질 만큼 중요하지 않다는 생각이 들었다.

  • 이름
  • 주소
  • 날짜
  • 별점
  • 그룹
  • 분류
  • 방문 횟수
  • 코멘트

이 중에 어떤 정보를 보여지게 할까 고민했다.

너무 적은 정보는 휑해 보이고 너무 많은 정보는 과해보이기 때문에 불필요한 정보는 거르고 짧고 간편한 정보 위주로 골랐다.


필수인 이름과 사진 그리고 그룹, 분류, 별점, 날짜를 배치해 넣었다.

조금 허전해 보이는 것도 같지만 일단 이렇게 설정...!



3. stepper, picker 배경색


장소 추가에서 stepper와 picker의 색상이 회색이라 통일성이 없어서 한동안 바꾸고 싶었다.

처음 넣었을 때 나름 서치해보고 바꿨는데 안됐던 기억이 있는데

picker.backgroundColor = UIColor.blue

storyboard가 아닌 코드로 하니까 됐다...

근데 다시해보니 steppers는 storyboard에서 설정해도 변경되고 picker는 안 된다.
뭐가 다른거지...?

나름 통일성을 주고 싶었는데 막상 해보니 구린거 같다... 🥲

아예 흰색으로 하고 싶은데 UIColor.white로 설정하면 기본과 같은 회색이 돼서 방법을 더 찾아봐야 하겠다.

profile
iOS Developer

0개의 댓글