Notice
Recent Posts
Recent Comments
Link
study record
[iOS] 스냅킷(SnapKit) inset과 offset 본문
offset을 쓸 때
"현재 뷰 constraint = 슈퍼뷰 constraint + offset 값”를 생각하고 세팅한다.
button.snp.makeConstraints { make in
make.top.equalToSuperview().offset(50)
make.left.equalToSuperview().offset(50)
make.right.equalToSuperview().offset(-50)
make.bottom.equalToSuperview().offset(-50)
}
기준이 되는 view에 맞추어서 제약을 설정한다. botton과 right는 마이너스 부호를 가지게 된다.
inset을 쓸 때
button.snp.makeConstraints { make in
make.edges.equalToSuperview().inset(UIEdgeInsets(top: 50, left: 50, bottom: 50, right: 50))
$0.edges.equalToSuperview().inset(50)
}
// 동일 코드: make.edges.equalToSuperview().inset(50)
위의 offset 코드와 같다.
botton과 right는 음수가 아닌 양수 값이다.
모든 값이 같은 값이라면 inset을 사용해 더 깔끔하게 만들 수 있다.
edges: 가장자리를 일괄적으로 제약 조건 생성 (top, left, right, bottom)
offset은 다른 요소와의 간격에 사용하고,
inset은 superView와의 간격에 사용한다.
스냅킷 View 속성들과 NSLayoutAttribute
참고 : https://eunjin3786.tistory.com/202
https://ios-development.tistory.com/609
'iOS > iOS 정리' 카테고리의 다른 글
[iOS] 왜 GCD(Grand Central DispatchQueue)를 사용하는가? (0) | 2022.03.07 |
---|---|
[iOS] iOS TextView 행간, 자간 조절하기 (0) | 2022.03.02 |
[iOS] iOS 앱 상태변화 iOS Application States (0) | 2022.02.24 |
[iOS] 코드로 네비게이션 컨트롤러 설정 및 Rx 버튼클릭 이벤트( 화면 전환 ) (0) | 2022.02.16 |
[iOS] 라이브 렌더링(스토리보드에서 실시간 랜더링)을 어떻게 설정할 수 있나? (0) | 2022.02.16 |