티스토리 뷰
728x90
반응형
아래의 뷰를 만들기 위한 과정 중에서 알게된 SnapKit 사용법을 적어보자.
- 화면의 y축 중심으로부터 constraint 를 잡고싶다.
- 너비 대비 높이를 비율로 잡고싶다.
우선 아래와 같은 레이아웃을 잡고싶었다.
그래서 다음과 같이 코드를 작성하였다.
// "기본" 이라고 적힌 UIView.
basicBackgroundView.snp.makeConstraints { make in
// 🚨 inset 이 적용되지 않아서 y축 중심에 위치.
make.bottom.equalTo(view.snp.centerY).inset(-63)
make.leading.trailing.equalToSuperview().inset(24)
// 🚨 multipliedBy 가 적용되지 않아서 뷰에서 보이지 않음.
make.height.equalTo(basicBackgroundView.snp.width).multipliedBy(117 / 327)
}
// 나머지 "직장", "덕질" 이라고 적힌 UIView 는 높이를 정적이게 설정.
결과는 아래와 같았다.
이런 경우에 다음과 같이 코드를 작성하면 된다.
basicBackgroundView.snp.makeConstraints { make in
// ✅ inset 이 아닌 offset 으로 다룸.
make.bottom.equalTo(view.snp.centerY).offset(-63)
make.leading.trailing.equalToSuperview().inset(24)
// ✅ 소수점을 표시해줌.
make.height.equalTo(basicBackgroundView.snp.width).multipliedBy(117.0 / 327.0)
}
728x90
반응형
'iOS' 카테고리의 다른 글
iOS) Widget view 의 이미지 맥시멈 사이즈 (0) | 2023.05.09 |
---|---|
iOS) FlexLayout 과 PinLayout 을 사용하여 UI 구현 (2) | 2023.03.25 |
iOS) Code Signing 과 Fastlane match 설정 (6) | 2023.02.21 |
iOS) Widget 의 placeholder, snapshot, timeline 확인해보기 (0) | 2023.02.10 |
iOS) 잠금화면 위젯 이미지 에셋 적용기 (0) | 2023.02.03 |
댓글
TAG
- configurable widget
- Widget
- WidgetKit
- 2022 KAKAO TECH INTERNSHIP
- YPImagePicker
- urlsession
- Swift
- Protocol
- CloneCoding
- RxCocoa
- github
- MOYA
- Firebase
- UserDefaults
- containerBackground
- Notification
- rxswift
- async/await
- 서버통신
- WWDC
- watchOS
- APNS
- MVVM
- Objective-C
- OpenSourceLibrary
- SwiftUI
- WWDC22
- Algorithm
- IOS
- projectsetting
최근에 올라온 글
최근에 달린 댓글
글 보관함
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
링크
- Total
- Today
- Yesterday