24.07.08 Today I Learned

2024. 7. 8. 19:08

오늘은 카테고리를 커스텀하려고한다. 카테고리는 세그먼트를 사용하여 구현을 했는데

 

위 사진처럼 카테고리가 회색 배경이 있고 박스안에 갇힌거로 나와있다.

그래서 우선 배경을 지우기 위해 아래의 코드를 사용했다.

control.setBackgroundImage(UIImage(), for: .normal, barMetrics: .default)
control.setDividerImage(UIImage(), forLeftSegmentState: .normal, rightSegmentState: .normal, barMetrics: .default)

위 코드를 세그먼트 커스텀에 추가하여 배경을 하얗게 하고 줄로 나뉘는걸 없애주어서 투명하게 만들었다.

추가로 사용자가 선택한 카테고리로 넘어갈 때 밑줄을 추가하여 사용자가 어느 카테고리에 있는지를 추가하였다.

  let underlineView: UIView = {
        let view = UIView()
        view.backgroundColor = .black
        view.translatesAutoresizingMaskIntoConstraints = false
        return view
    }()

위 코드로 밑줄View를 생성해주고

// 밑줄 이동 메서드
    func moveUnderline(to index: Int) {
        let segmentWidth = segmentControl.frame.width / CGFloat(categories.count)
        let leadingConstraint = segmentWidth * CGFloat(index)
        UIView.animate(withDuration: 0.3) {
            self.underlineView.snp.updateConstraints {
                $0.leading.equalToSuperview().offset(leadingConstraint)
            }
            self.layoutIfNeeded()
        }
    }

밑줄이 사용자가 선택한 카테고리를 따라가게 만들었다.

 


오늘은 팀별 과제 발표를 했는데 

 

3조 맥아커피 맥고싶다.pdf
3.28MB

 

발표 자료는 위 pdf다

'Today I Learned > 2024' 카테고리의 다른 글

24.07.15 Today I Learned  (2) 2024.07.15
24.07.11 Today I Learned  (0) 2024.07.11
24.07.04 Today I Learned  (0) 2024.07.04
24.07.02 Today I Learned  (0) 2024.07.02
24.07.01 Today I Learned  (0) 2024.07.01

BELATED ARTICLES

more