ํฐ์คํ ๋ฆฌ ๋ทฐ

์๋ ํ์ธ์
๋๊ตฌ๋ฆฌ์ ๋๋ค:)
์ค๋์ Multiplier ์ฌ์ฉ์ ๋ํด ํ๋ฒ ์์๋ณผ๊ฒ์!
Multiplier
์ด๋ฆ์ ์ฌ์ ์ ๊ฒ์ํด ๋ณด๋ฉด ์น์, ๊ณฑํ๋ ์๋ผ๊ณ ๋์ด ์์ต๋๋ค.
๊ทธ๋ฐ๋ฐ multiplier...
์ ํฌ์คํ ์ ๋ณด์ ๋ถ๋ค์ด๋ผ๋ฉด ์ด๋์ ๋ณด์์ง ์์๋์?

๋ฐ๋ก ์ด ๊ทธ๋ฆผ์์ ๋ดค์์ฃ !!
๊ธฐ๋ณธ์ ์ผ๋ก constraint๋ฅผ ์ฃผ๊ฒ ๋๋ฉด multiplier๋ 1.0์ผ๋ก ์ค์ ๋์ด ์์ต๋๋ค.
์์ผ๋ก ๋ดค์๋ mutiplier๋ฅผ ๋ฐ๊พธ๊ฒ ๋๋ฉด ๋น์จ๋ก constraint๊ฐ ๋ฐ๋๊ฒ ๋ค๋ ๊ฐ์ด ์ค์์ฃ ?
๋ฐ๋ก ์ฌ์ฉํด๋ณด๊ฒ ์ต๋๋ค!!
Multiplier ์ฌ์ฉํ๊ธฐ!
๋จผ์ ์ด๊ธฐ ์ธํ ์ ํ๋์ UIView๋ฅผ ์ถ๊ฐํ ํ Safe Area Edge์ Constraint๋ฅผ ๋ง์ถฐ๋๊ฒ ์ต๋๋ค.
ํ๋์ UIView leading Constraint์ multiplier 2๋ฅผ ์ค๋ณผ๊ฒ์!


์ ๊ทผ๋ฐ ์๋ฌด ๋ณํ๊ฐ ์๋ค์!
๊ณต์์ ํ์ธํด ๋ด ์๋ค.
(ํ๋์ UIView).leading = (2.0)*SafeArea.leading
์ด๋ ๊ฒ ์ ์ฉํ ์ ์์๊ฒ ๊ฐ์๋ฐ
์ง๊ธ SafeArea.leading ๊ฐ์ด 0์ด์ฃ ?
๊ทธ๋์ mutiplier์ ์ด๋ค ๊ฐ์ ๋ฃ๋๋ผ๋ ๋ฐ์์ด ์๋๋ ๊ฒ์ ๋๋ค.
ํ๋์ UIView top constraint์ mutiplier๊ฐ 2.0์ ์ค์ ํด ๋ณด๊ฒ ์ต๋๋ค.


์ด๋ฒ์ ํ๋์ UIView์ Y๊ฐ์ด ๋ณํ๋ ๊ฒ์ ๋ณผ ์ ์์ฃ ?
multiplier๋ฅผ ์ ์ฉ์ ์ ํ๋์ UIView์ Y๊ฐ์ด 47์ธ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด ๊ฐ์ SafeArea์ top๊ฐ์ธ๋ฐ์!
์ด๊ฒ์ ๊ณต์์ ๋์ ํด๋ณด๋ฉด
(ํ๋์ UIView).top = (2.0)*SafeArea.top(47.0) = 94.0
์ฌ์ง์ ๊ฒฐ๊ณผ๋ UIView์ Y๊ฐ์ด 94์ธ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
ํ๋์ UIView trailing Constraint์ multiplier 2๋ฅผ ์ค๋ณผ๊ฒ์!


์ด๊ฑด ๋ฐ์ผ๋ก ์ค์ด๋ฒ๋ ธ๋ค์!
์๋ง ๋๋ฐฐ๋ก ์ปค์ง๊ฑฐ๋ผ๋ ์์์ ๊ฐ์ง์ ๋ถ๋ ์์ผ์ค ๊ฒ ๊ฐ์ต๋๋ค.
trailling์ ๋ณด๋ ๊ด์ ์ด ์กฐ๊ธ ๋ฌ๋ผ์ง๋๋ฐ์!
ํ๋์ UIView๋ ๊ธฐ๋ณธ์ผ๋ก ๊ฐ์ง๊ณ ์๋ View์์ SubView ์ด๋ฏ๋ก
trailing
๊ณต์์ ๋ค์ ๋ณด๋ฉด ์ด๋ฐ ํํ์ ๋๋ค.
SafeArea.trailing = (ํ๋์ UIView.trailing )* multiplier + Constant
๊ณต์ ์ขํญ์ธ SafeArea.trailing ๋ณํ์ง ์๋ ์์ ์ ๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ multiflier๊ฐ 2๋ฅผ ์ฃผ๊ฒ ๋๋ฉด ํ๋์ UIView.trailing์ด 1/2์ด ๋๋ ๊ฒ์ ๋๋ค.
๊ทธ๋์ Constant๊ฐ์ ์ฃผ๊ฒ ๋๋ฉด ํ๋์ UIView.trailing ๊ฐ์ด constant๋งํผ ์ค์ด๋ค๊ฒ ๋๋ ๊ฒ์ ๋๋ค.
์ค์ ๋ก Constraint ๋ชฉ๋ก์ ๋ณด๋ฉด(์๋ ์ฌ์ง ์ฐธ๊ณ ) ๊ณต์์ด ๋๊ฐ์ด ์ ์ฉ๋์ด ์์ต๋๋ค.

bottom constraint๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค!
muliplier๋ฅผ ํ๋์ UIView์ ์ฃผ๊ฒ ๋๋ฉด ํฌ๊ธฐ๊ฐ ์ค์ด๋ค๊ฒ ๋ฉ๋๋ค!
๊ทผ๋ฐ safe area์์ bottom๊ณผ trailing์ ๊ณต์ ์ขํญ์ด ์ ์ ๋ ๊ฒ ๋๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋๋ฐ
์์๋๋ถ ์์ผ์๋ฉด ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋คใ ใ
์ด๋ ๊ฒ ๋๋ ๊ฒฝ์ฐ๋ ๋ค์ ํ๋ฒ ๋งํ๋ฉด
๊ธฐ์ค์ด ๋๋ ๊ฐ(Constraint๊ฐ ๊ฑธ๋ฆฐ ์๋์ ๊ฐ)์ด ๋ณํ์ง ์๋ ์์์ผ ๊ฒฝ์ฐ ์ด๋ ๊ฒ ๋ฉ๋๋ค.
๊ณต์์ผ๋ก ๋ณด๋ฉด ์ขํญ์ ์๋ ๊ฐ์ด ์์์ด๋ฉด ๊ฐ์ ์ผ์ด์ค๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ผ safeArea ๋ฟ๋ง ์๋๋ผ ์ปดํฌ๋ํธ์ ์ปดํฌ๋ํธ ์ฌ์ด์๋ ์ด๋ฐ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ด์!
ํ ์คํธ ํด๋ณด๊ฒ ์ต๋๋ค!!
๊ทธ๋ฆผ์ ํ๋์ UIView Height๋ฅผ 100์ผ๋ก
ํ๋์ UIview์ ๋ ธ๋์ UIView๋ฅผ equal height ์์ฑ์ ์ฃผ์์ต๋๋ค.
๊ทธ๋ฌ์ ๋ equal Height์ multiplier์ ๊ฐ 2๋ฅผ ์ค์ ํ๋ฉด


๋ ธ๋์ UIView height์ด 50์ด ๋๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค!!
๊ด๊ณ๋ฅผ ์ ์ค์ ํด์ multiplier๋ฅผ ์ฃผ์ด์ผ๊ฒ ๋ค์!
๊ธ ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ safe area์์ bottom๊ณผ trailing์ ์ฃผ๊ฒ ๋๋ฉด ๊ณต์ ์ขํญ์ด
์ leading๊ณผ top์ ์๊ณผ ๋ค๋ฅด๊ฒ ๋๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋๋ฐ
์์๋ ๋ถ์ด ๊ณ์๋ค๋ฉด ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋คใ ใ
'iOS > UIKit' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [iOS/UIKit] Auto Layout - Priority ์ฌ์ฉํ๊ธฐ (0) | 2022.11.21 |
|---|---|
| [iOS/UIKit] Auto Layout - Equal ์ฌ์ฉํด๋ณด๊ธฐ (0) | 2022.11.18 |
| [iOS/UIKit] AutoLayout์ ๋ฌด์์ธ๊ฐ? (0) | 2022.11.17 |
| [iOS/UIKit] Window ๊ทธ๋ฆฌ๊ณ makeKeyandVisible์ ๋ญ๊น? (0) | 2022.09.12 |
| [iOS/UIKit] ์คํ ๋ฆฌ๋ณด๋(storyboard)์์ด ์ฝ๋๋ก ์ฒ์ ํ๋ฉด ์ฐ๊ฒฐํ๊ธฐ (0) | 2022.09.07 |
- Total
- Today
- Yesterday
- ์ค์ํํธ ๊ณต๋ถ
- Clean
- swift urlsession
- network
- ์ค์ํํธ ํ๋กํ ์ฝ
- swift ํ๋กํ ์ฝ
- swift
- ์คํ ๋ ์ด์์
- func
- Swift Network
- ios
- RxSwift
- set
- XCTest
- Property
- swift ๊ณต๋ถ
- ์ค์ํํธ map
- ํ๋กํผํฐ
- test
- ํ ์คํธ
- ์ค์ํํธ
- xcode
- URLSession
- ํ๋กํ ์ฝ
- ๊ณต๋ถ
- observable
- Protocol
- Unit Test
- autolayout
- RX
| ์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
|---|---|---|---|---|---|---|
| 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 | 31 |