12-4 다이나믹 아일랜드

STONE·2025년 1월 9일

Swift_Ios

목록 보기
38/44

주제

다이나믹 아일랜드에 가려짐

문제

아이폰 다이나믹 아일랜드가 있는 기종에 저렇게 화면이 가려지는 경우가 발생

해결방법

safeAreaLayoutGuide 사용
safeAreaLayoutGuide는 iOS에서 레이아웃을 구성할 때 화면의 "안전 영역(safe area)"을 기준으로 제약을 설정할 수 있도록 도와주는 객체입니다. 이 안전 영역은 화면의 상단, 하단, 왼쪽, 오른쪽에서 시스템 UI 요소들(예: 다이나믹 아일랜드, 홈 인디케이터, 상태 바 등)에 의해 가려지지 않는 영역을 의미합니다.
특징

  • 상단 안전 영역: 상태 바와 다이나믹 아일랜드와 겹치지 않는 영역
  • 하단 안전 영역: 홈 인디케이터와 겹치지 않는 영역
  • 좌우 안전 영역: 화면의 가장자리(특히 화면이 곡선 형태인 최신 기기에서 중요)
// 상단, 좌우, 하단 안전한 여백 설정
let label = UILabel()
label.text = "안전 영역 예시"
view.addSubview(label)

label.snp.makeConstraints { make in
    make.top.equalTo(view.safeAreaLayoutGuide.snp.top).offset(20) // 상단 안전 영역에서 20포인트 여백
    make.leading.equalTo(view.safeAreaLayoutGuide.snp.leading).offset(16) // 왼쪽 안전 영역에서 16포인트 여백
    make.trailing.equalTo(view.safeAreaLayoutGuide.snp.trailing).offset(-16) // 오른쪽 안전 영역에서 16포인트 여백
}

profile
흠...?

0개의 댓글