[iOS/UIKit] Auto Layout - Priority ์‚ฌ์šฉํ•˜๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š” ๋„ˆ๊ตฌ๋ฆฌ์ž…๋‹ˆ๋‹ค:) ์˜ค๋Š˜์€ priority ์†์„ฑ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ  ์‚ฌ์šฉํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.. Priority ์‚ฌ์ „ ์ •์˜๋Š” ์šฐ์„ , ์šฐ์„  ํ•  ๊ฒƒ ์ž…๋‹ˆ๋‹ค! ์ปดํฌ๋„ŒํŠธ์— ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ค„ ๊ธฐ๋Šฅ ๊ฐ™๋„ค์š”! ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•ด ๋ณผ ๊ธฐ๋Šฅ์€ ์„ธ๊ฐ€์ง€ ์ž…๋‹ˆ๋‹ค. hugging priority, compression resistance priority, constraints priority ์ž…๋‹ˆ๋‹ค! ์ˆœ์„œ๋Œ€๋กœ ์•Œ์•„๋ณผ๊ฒŒ์š”!! Hugging Priority hugging์€ ์•ˆ๊ณ  ์žˆ๋‹ค๋Š” ๋œป์ด์ฃ ? ์ง์—ญํ•˜๋ฉด ์•ˆ๊ณ  ์žˆ๋Š” ์šฐ์„ ์ˆœ์œ„์ธ๋ฐ... ์‹ค์ œ๋Š” ์–ด๋–ค ๊ธฐ๋Šฅ์ผ๊นŒ์š”? ๋ฐ”๋กœ ์ปดํฌ๋„ŒํŠธ์˜ ์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜์–ด๋‚˜์ง€ ์•Š๊ณ  ํฌ๊ธฐ๋ฅผ ์œ ์ง€์‹œํ‚ค๋Š” ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค! ๋ฌด์Šจ๋ง์ธ์ง€ ์ดํ•ด๋˜์‹œ๋‚˜์š”? ์•ˆ๋˜์…”๋„ ์ƒ๊ด€์—†์Šต๋‹ˆ๋‹ค! ์ค€๋น„ํ•œ ์˜ˆ์ œ๋ฅผ ๋ณธ๋‹ค๋ฉด ๋ฐ”๋กœ ์ดํ•ดํ•˜์‹ค๊ฑฐ์—์š”!ใ…Žใ…Ž UILabel์„ ..

iOS/UIKit 2022. 11. 21. 23:52
[iOS/UIKit] Auto Layout - Multiplier ์‚ฌ์šฉํ•˜๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š” ๋„ˆ๊ตฌ๋ฆฌ์ž…๋‹ˆ๋‹ค:) ์˜ค๋Š˜์€ Multiplier ์‚ฌ์šฉ์— ๋Œ€ํ•ด ํ•œ๋ฒˆ ์•Œ์•„๋ณผ๊ฒŒ์š”! Multiplier ์ด๋ฆ„์„ ์‚ฌ์ „์— ๊ฒ€์ƒ‰ํ•ด ๋ณด๋ฉด ์Šน์ˆ˜, ๊ณฑํ•˜๋Š” ์ˆ˜๋ผ๊ณ  ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ multiplier... ์ œ ํฌ์ŠคํŒ…์„ ๋ณด์‹  ๋ถ„๋“ค์ด๋ผ๋ฉด ์–ด๋””์„œ ๋ณด์‹œ์ง€ ์•Š์•˜๋‚˜์š”? ๋ฐ”๋กœ ์ด ๊ทธ๋ฆผ์—์„œ ๋ดค์—ˆ์ฃ !! ๊ธฐ๋ณธ์ ์œผ๋กœ constraint๋ฅผ ์ฃผ๊ฒŒ ๋˜๋ฉด multiplier๋Š” 1.0์œผ๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์‹์œผ๋กœ ๋ดค์„๋•Œ mutiplier๋ฅผ ๋ฐ”๊พธ๊ฒŒ ๋˜๋ฉด ๋น„์œจ๋กœ constraint๊ฐ€ ๋ฐ”๋€Œ๊ฒ ๋‹ค๋Š” ๊ฐ์ด ์˜ค์‹œ์ฃ ? ๋ฐ”๋กœ ์‚ฌ์šฉํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!! Multiplier ์‚ฌ์šฉํ•˜๊ธฐ! ๋จผ์ € ์ดˆ๊ธฐ ์„ธํŒ…์€ ํŒŒ๋ž€์ƒ‰ UIView๋ฅผ ์ถ”๊ฐ€ํ•œ ํ›„ Safe Area Edge์— Constraint๋ฅผ ๋งž์ถฐ๋‘๊ฒ ์Šต๋‹ˆ๋‹ค. ํŒŒ๋ž€์ƒ‰ UIView leading Constraint์— mult..

iOS/UIKit 2022. 11. 19. 16:16
[iOS/UIKit] Auto Layout - Equal ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š” ๋„ˆ๊ตฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. auto layout์„ ์ •๋ฆฌํ•˜๊ณ  ์žˆ๋Š”๋ฐ์š”. ๊ธฐ๋Šฅ์ค‘ Equal์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ง๊ด€์„ฑ์„ ์œ„ํ•ด Storyboard๋กœ ์ง„ํ–‰ํ• ๊ฒŒ์š”! Equal ์‚ฌ์‹ค equal์€ ์กฐ๊ธˆ์ด๋ผ๋„ Xcode์—์„œ UI๋ฅผ ๋‹ค๋ฃจ์–ด ๋ดค๋‹ค๋ฉด ์•Œ๊ณ  ๊ณ„์‹  ๊ฐœ๋…์ด์ฃ  ์Šˆํผ๋ทฐ์™€ ์ปดํฌ๋„ŒํŠธ, ์ปดํฌ๋„ŒํŠธ์™€ ์ปดํฌ๋„ŒํŠธ(๊ฐ์ฒด ๊ฐœ์ˆ˜ ์ƒ๊ด€ ์—†์Œ) ์‚ฌ์ด์— EqualWidth, EqualHeight๋ฅผ ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด์ฃ  ์ด๋ ‡๊ฒŒ ์‰ฌ์šด๊ฑธ ์ œ๊ฐ€ ์™œ ํฌ์ŠคํŒ… ์ฃผ์ œ๋กœ ๊ฐ€์ง€๊ณ  ์™”๋ƒ... ๋ฐ”๋กœ Equal ์ƒํƒœ์—์„œ Constant ๊ฐ’์„ ์ฃผ๋Š”๊ฒƒ์„ ํ™•์ธํ•ด ๋ณด๊ณ ์ž ๊ฐ€์ง€๊ณ  ์™”์Šต๋‹ˆ๋‹ค. ์ฃผ์ œ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ์ „์— ํ•œ๋ฒˆ ์ ์šฉํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์ถ”๊ฐ€ํ•œ ๋‘๊ฐœ์˜ UIView๋ฅผ ๋‹ค์ค‘์„ ํƒํ•˜์‹œ๊ณ  ์ด๋ ‡๊ฒŒ top, leading, trailing, bottom๋ฅผ ๊ฐ๊ฐ 20p..

iOS/UIKit 2022. 11. 18. 17:30
[iOS/UIKit] AutoLayout์€ ๋ฌด์—‡์ธ๊ฐ€?

์•ˆ๋…•ํ•˜์„ธ์š”~~ ๋„ˆ๊ตฌ๋ฆฌ์ž…๋‹ˆ๋‹ค!! ์š”์ฆ˜์€ ๊ณ„์† SwiftUI๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ UIKit์—์„œ ์ •๋ฆฌํ•˜๊ณ  ์‹ถ์€๊ฒŒ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์žˆ๋Š”๋ฐ์š”~ ๊ทธ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ AutoLayout์ž…๋‹ˆ๋‹ค. UI์—์„œ ๊ธฐ๋ณธ์ด ๋˜๋Š” ๋งŒํผ ์ž˜ ์ •๋ฆฌํ•ด๋ณด๋„๋ก ํ• ๊ฒŒ์š”! Frame-Based Layout์ด๋ž€? Auto Layout ์ด์•ผ๊ธฐ ํ•˜๋ฉด์„œ Frame-based layout์€ ๊ฐ‘์ž๊ธฐ ๋ญ๋ƒ๊ณ ์š”? auto layout์ด๋ผ๋Š” ๊ฐœ๋…์ด ๋“ค์–ด์˜ค๊ธฐ ์ „์— ์‚ฌ์šฉํ–ˆ๋˜ ๊ฐœ๋…์ด Frame-based layout์ž…๋‹ˆ๋‹ค!! ใ…Žใ…Ž Frame-based layout์—์„œ ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ™”๋ฉด์— ์œ„์น˜์‹œํ‚ค๊ธฐ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์€ ์Šˆํผ๋ทฐ์˜ ์ขŒํ‘œ๊ณ„์—์„œ ์ปดํฌ๋„ŒํŠธ์˜ ์›์ , ๋„ˆ๋น„, ๋†’์ด์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ•™์‹œ๊ฐ„๋•Œ ์ขŒํ‘œ๊ณ„์—์„œ ์‚ฌ๊ฐํ˜•์˜ ์œ„์น˜๋ฅผ ๊ตฌํ• ๋•Œ ์ž์ฃผ์ผ๋˜ ๋ฐฉ๋ฒ•์ด์ฃ ? ์ต์ˆ™ํ•˜์‹ค ๊ฒ๋‹ˆ๋‹ค. layout์—์„œ ๋ณ€๊ฒฝ..

iOS/UIKit 2022. 11. 17. 23:39
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
ยซ   2024/05   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
๊ธ€ ๋ณด๊ด€ํ•จ