Inset 언제 사용할까?
inset은 superView를 기준으로 안쪽으로 간격을 주고싶을 때 사용한다.
// 회색뷰가 view의 subView, view가 회색뷰의 superview인 상태
view.addSubview(grayView)
grayView.snp.makeConstraints {
$0.top.equalToSuperview().inset(100) // view의 top으로부터 안쪽으로 간격 100 추가
$0.leading.equalToSuperview().inset(100) // view의 leading으로부터 안쪽으로 간격 100 추가
$0.trailing.equalToSuperview().inset(100) // view의 trailing으로부터 안쪽으로 간격 100 추가
$0.bottom.equalToSuperview().inset(100) // view의 bottom으로부터 안쪽으로 간격 100 추가
}
superview로부터 top, leading, trailing, bottom과의 간격이 100이 된다.
offset 언제 사용할까?
offset은 superview가 아닌 뷰에 간격을 주고싶을 때 사용한다.
// 서로가 superView, subView 관계가 아닌 상태
view.addSubview(whiteView)
view.addSubview(grayView)
grayView.snp.makeConstraints {
$0.top.equalTo(whiteView.snp.bottom).offset(100) // 흰색 뷰의 bottom으로부터 100 간격 추가
$0.width.height.equalTo(300)
$0.centerX.equalToSuperview()
}
흰색 뷰의 bottom으로부터 회색 뷰의 top이 100 떨어지게 된다.
정리
- inset : superview, subview 관계에서 subview가 superview로부터 간격을 주고싶을 때 사용
- offset : 부모자식관계가 아닌 뷰로부터 간격을 주고싶을 때 사용, bottom or right(trailing)에 간격을 줄 때에는 음수(-) 사용
혹시 잘못된 정보가 있다면 댓글로 알려주시면 감사드리겠습니다 (ㅡㅡ)
끄 ㅡ 읕 !
'Swift' 카테고리의 다른 글
[Swift] 상태에 따라 UIButton Title 변경하기 (0) | 2023.07.03 |
---|
댓글