๋ฐ˜์‘ํ˜•

iOS 61

[ Swift ] UIStackView์—์„œ ์—ฌ๋Ÿฌ ๋ฒ„ํŠผ์„ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ UIStackView์—์„œ ์—ฌ๋Ÿฌ ๋ฒ„ํŠผ์„ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) UIStackView UIStackView๋Š” ์„œ๋ธŒ ๋ทฐ๋“ค์„ ์Œ“์•„์„œ ๋™์ ์œผ๋กœ ๋‚ด๋ถ€ ํฌ๊ธฐ๋‚˜ ์œ„์น˜๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“  UIView์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์†์„ฑ๋“ค์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๋ฐ ํ•˜๋‚˜์”ฉ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. 1. Axis - ์–ด๋–ค ๋ฐฉํ–ฅ์œผ๋กœ ์„œ๋ธŒ ๋ทฐ๋“ค์„ ๋†“์„ ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - Horizontal ํ˜น์€ Vertical๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2. Spacing - ๊ฐ ์„œ๋ธŒ๋ทฐ๋“ค์˜ ๊ฐ„๊ฒฉ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. 3. Alignment - ์„œ๋ธŒ ๋ทฐ๋“ค์˜ ์ •๋ ฌ๋ฐฉ๋ฒ•์„ ๊ฒฐ์ •ํ•˜๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค. - ๊ธฐ์กด์— ์ •ํ•ด๋‘์—ˆ๋˜ Axis์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค. (1) Horizontal Fill: StackView์˜ ๋†’์ด๋งŒํผ ์„œ๋ธŒ ๋ทฐ๋“ค์˜ ๋†’์ด๊ฐ€..

iOS/Swift 2022.09.18

[ Xcode ] Package.resolved file is corrupted or malformed ์—๋Ÿฌ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ Package.resolved file is corrupted or malformed ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• Package.resolved ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๊ณ  ๋‹ค์‹œ ์—ด๊ณ  ๋นŒ๋“œํ•˜๊ธฐ 1. Finder์—์„œ Shift + Cmd + . ์„ ์ด์šฉํ•ด ์ˆจ๊ฒจ์ง„ ํŒŒ์ผ ๋ฐ ํด๋”๋ฅผ ํ‘œ์‹œ 2. Package.resolved ํŒŒ์ผ์€ .xcodeproj ์•ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค. [appName].xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved 3. .xcodeproj ๋ฐ project.xcworkspace๋ฅผ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์œผ๋กœ ํด๋ฆญํ•˜์—ฌ ํŒจํ‚ค์ง€ ๋‚ด์šฉ ๋ณด๊ธฐ ํด๋ฆญ 4. Package.resolved ํŒŒ์ผ์„ ํœด..

iOS/Xcode 2022.09.17

[ Swift ] ๊ฐ„๋‹จํ•œ ํ† ์ŠคํŠธ ๋ฉ”์„ธ์ง€ ๊ตฌํ˜„ํ•˜๊ธฐ (feat.UILabel)

์•ˆ๋…•ํ•˜์„ธ์š”~ ์ •๋ง ์˜ค๋ž˜๊ฐ„๋งŒ์— ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ…์„ ํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ† ์ŠคํŠธ ๋ฉ”์‹œ์ง€๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) 1. UILabel ์ปค์Šคํ…€ํ•˜๊ธฐ drawText(in:)์€ Label์˜ text๊ฐ€ ๊ทธ๋ ค์งˆ ๋•Œ rect์— ๊ด€ํ•œ ๊ฐ’์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋กœ Override ํ•ด์„œ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, drawText(in:)์—์„œ padding๊ฐ’์„ ์„ค์ •ํ•˜์‹œ๊ฒŒ ๋˜๋ฉด ๋ฌธ์ž์™€ Label ์‚ฌ์ด์— ๊ณต๊ฐ„์ด ์ƒ๊ธฐ๊ณ  ํ† ์ŠคํŠธ ๋ฉ”์„ธ์ง€ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. final class ToastLabel: UILabel { // ์ƒํ•˜์ขŒ์šฐ์˜ ์–ผ๋งˆ์˜ ํŒจ๋”ฉ๊ฐ’์„ ์ค„์ง€ UIEdgeInsets ๋ณ€์ˆ˜ ์ƒ์„ฑ private var padding = UIEdgeInsets(top: 8.0, left: 8.0, bottom: ..

iOS/Swift 2022.09.16

[ Swift ] Realm์—์„œ ๋ฐฐ์—ด์‚ฌ์šฉํ•˜๊ธฐ ( feat.List )

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ Realm์—์„œ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) Realm์—์„œ์˜ ๋ฐฐ์—ด ์‚ฌ์šฉ Realm์—์„œ๋Š” Swift์˜ Array๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์œผ๋ฉฐ Realm ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ธ List๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด์„œ ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„๊ณผ ๋‚˜์ด ๊ทธ๋ฆฌ๊ณ  ์ข‹์•„ํ•˜๋Š” ์Œ์‹๋“ค์„ ๋ฆฌ์ŠคํŠธ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” '์นœ๊ตฌ'๋ผ๋Š” ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ผ๋‹จ, ์Œ์‹ ๋ชจ๋ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. class Food: Object { @Persisted var name: String convenience init(name: String) { self.init() self.name = name } } ์ด ์Œ์‹ ๋ชจ๋ธ์„ ๋ฆฌ์ŠคํŠธ์˜ ํ˜•ํƒœ๋กœ ๊ฐ–๊ณ  ์žˆ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•ž์„œ ๋งํ•œ ..

iOS/Swift 2022.06.28

[ Swift ] ์ •๊ทœ์‹์„ ์‚ฌ์šฉํ•ด๋ณด์ž ( UITextField, UITextView )

์•ˆ๋…•ํ•˜์„ธ์š” ~ ์˜ค๋Š˜์€ ์ •๊ทœ์‹์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค ๋ณด๋ฉด ์ด๋ฉ”์ผ, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋“ฑ๊ณผ ๊ฐ™์ด ํŠน์ •ํ•œ ๊ทœ์น™์„ ํ•„์š”๋กœ ํ•˜๋Š” ์ž…๋ ฅ์ด ์กด์žฌํ•  ์ˆ˜๋ฐ–์— ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿด ๋•Œ ํ•„์š”ํ•œ ๊ฒŒ ๋ฐ”๋กœ ์ •๊ทœ์‹์ž…๋‹ˆ๋‹ค. ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ฐฉ์ง€ํ•˜๋Š” ์ •๊ทœ์‹์„ ์ ์–ด๋ณด๋ฉด์„œ ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ •๊ทœ์‹ ๊ฐ€์žฅ ๋จผ์ € ํŠน์ •ํ•œ ์กฐ๊ฑด(์—ฌ๊ธฐ์„œ๋Š” ์ด๋ชจํ‹ฐ์ฝ˜ ๋ฐฉ์ง€)์„ ํ†ตํ•ด Bool ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. func isCorrect() -> Bool { do{ let regex = try NSRegularExpression(pattern: "^[a-zA-Z๊ฐ€-ํžฃใ„ฑ-ใ…Žใ…-ใ…ฃ\\s]$", options: .caseInsensitive) if let _ = regex.firstMatch(in: self, options: NS..

iOS/Swift 2022.06.27

[ Swift ] ๊ณ ์ฐจํ•จ์ˆ˜ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๊ธฐ ( Map, Filter, Reduce )

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ ๊ณ ์ฐจํ•จ์ˆ˜์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ๊ณ ์ฐจํ•จ์ˆ˜ ๊ณ ์ฐจ ํ•จ์ˆ˜๋Š” ๋‹ค๋ฅธ ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ๋ฐ›๊ฑฐ๋‚˜ ํ•จ์ˆ˜ ์‹คํ–‰์˜ ๊ฒฐ๊ณผ๋ฅผ ํ•จ์ˆ˜๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. Swift์˜ ํด๋กœ์ €๋Š” ์ผ๊ธ‰ ๊ฐ์ฒด์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•จ์ˆ˜์˜ ์ „๋‹ฌ ์ธ์ž๋กœ๋„ ์ „๋‹ฌ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ ๊ฒฐ๊ด๊ฐ’์œผ๋กœ ๋ฐ˜ํ™˜์ด ๋‹น์—ฐํžˆ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ข…๋ฅ˜ map, filter, reduce, forEach, compactMap, flatMap ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š” ๊ณ ์ฐจ ํ•จ์ˆ˜ 3๊ฐ€์ง€ 1. Map Returns an array containing the results of mapping the given closure over the sequence’s elements. ๊ธฐ์กด์˜ ์ปจํ…Œ์ด๋„ˆ์˜ ์š”์†Œ์— ๋Œ€ํ•ด ์ •์˜ํ•œ ํด๋กœ์ €๋กœ ๋งคํ•‘ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ƒˆ๋กœ์šด ์ปจํ…Œ์ด๋„ˆ๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ..

iOS/Swift 2022.06.22

[swift] ์ฑ„ํŒ… UI ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ(2)

[swift] ์ฑ„ํŒ… UI๋ฅผ ๋งŒ๋“ค์–ด๋ด…์‹œ๋‹ค!(1) ์•ˆ๋…•ํ•˜์„ธ์œ ~ ( ์˜ค๋Š˜ ์ด ์ธํŠธ๋กœ๋กœ ๋†€๋ฆผ์„ ๋ฐ›์•˜๋‹ต๋‹ˆ๋‹ค... ) ์˜ค๋Š˜์€ ์ฑ„ํŒ… UI๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ ์–ด๋ณด๋ ค๊ณ  ํ•ด์š”! ๋ช‡ ๊ฐœ์˜ ํฌ์ŠคํŒ…์ด ๋ ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์ผ๋‹จ ์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹นใ…Žใ…Ž ์ฑ„ํŒ… ์˜์ƒ pooh-footprints.tistory.com [ ์ฒซ ๋ฒˆ์งธ ํฌ์ŠคํŒ… ์ฐธ๊ณ  โฌ† ] ์ด์ „ ํฌ์ŠคํŒ…์—์„œ๋Š” ์…€์„ ๋“ฑ๋กํ•˜๊ณ  ํ™•์ธ๋งŒ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ ์šฉํ•ด ๋ดค๋‹ค๋ฉด ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” (1) ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ๋•Œ, ๊ฐ€์žฅ ์ตœ๊ทผ ์ฃผ๊ณ ๋ฐ›์€ ๊ฒƒ์ด ํ•˜๋‹จ์— ์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• (2) ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ, ์ž๋™์œผ๋กœ ๋งˆ์ง€๋ง‰์— ์ฃผ๊ณ ๋ฐ›์€ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ์Šคํฌ๋กค์˜ ์œ„์น˜๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ• ์œ„์˜ ๋‘๊ฐ€์ง€๋ฅผ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ ๊ฐœ๋ฐœ์ž ๋ฌธ์„œ๋ฅผ ๋จผ์ € ์‚ดํŽด๋ด…์‹œ๋‹ค. Apple Developer Doc..

iOS/Swift 2022.03.09

[swift] ์ฑ„ํŒ… UI ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ(1)

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ ์ฑ„ํŒ… UI๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ ์–ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ๋ช‡ ๊ฐœ์˜ ํฌ์ŠคํŒ…์ด ๋ ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์ผ๋‹จ ์‹œ์ž‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฑ„ํŒ… ์˜์ƒ ์ œ๊ฐ€ ๊ตฌํ˜„ํ•œ ์ฑ„ํŒ… UI๋Š” ์œ„์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. TableView์™€ TableViewCell TableView - ์ฑ„ํŒ… UI๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๋‹ค ๋ณด๋ฉด ๊ฐ„ํ˜น CollectionView๋ฅผ ์ด์šฉํ•˜์‹  ๋ถ„๋“ค๋„ ๊ณ„์‹œ๋˜๋ฐ ์ €๋Š” TableView๋ฅผ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. TableVIewCell - ๊ฐ™์€ Cell์„ ์ด์šฉํ•ด ๊ตฌํ˜„ํ•˜์‹  ๋ถ„๋“ค๋„ ์žˆ์—ˆ๋Š”๋ฐ ์ €์˜ ๊ฒฝ์šฐ์—๋Š” ์ž์‹ ์ด ๋ณด๋‚ด๋Š” ์ฑ„ํŒ…๊ณผ ์ƒ๋Œ€๊ฐ€ ๋ณด๋‚ด๋Š” ์ฑ„ํŒ… ๋‘ ๊ฐ€์ง€์˜ TableViewCell์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” TableViewCell์„ ๋งŒ๋“ค๊ณ  TableView์— ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ ์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. 1. TableVie..

iOS/Swift 2022.03.03

[swift] ๋ฒ„ํŠผํด๋ฆญ ์‹œ ๋“œ๋กญ๋‹ค์šด๋˜๋Š” ๋ทฐ๋ฅผ ๋งŒ๋“ค๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ–ˆ๋˜ ๋“œ๋กญ๋‹ค์šด ๋ทฐ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ๊ตฌํ˜„ํ–ˆ๋˜ ๋“œ๋กญ๋‹ค์šด ๋ทฐ๋Š” ๋‹ค์Œ์˜์ƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ํ™”๋ฉด ์˜์ƒ ์„ค๋ช… ๋‹ค๋ฅธ ์œ ์ €์™€์˜ ์ฑ„ํŒ…ํ™”๋ฉด์—์„œ ๋ฉ”๋‰ด๋ฒ„ํŠผ์„ ํด๋ฆญํ•  ์‹œ ์œ ์ € ์‹ ๊ณ , ์•ฝ์† ์ทจ์†Œ, ๋ฆฌ๋ทฐ ๋“ฑ๋ก ์„ธ ๊ฐ€์ง€ ๋ฒ„ํŠผ์ด ๋‚ด๋ ค์˜ต๋‹ˆ๋‹ค. ๋“œ๋กญ๋‹ค์šด ๊ตฌํ˜„ํ•˜๊ธฐ ์ฒซ ๋ฒˆ์งธ , ๋“œ๋กญ ๋‹ค์šด ํ•  ๋ทฐ๋ฅผ ๋งŒ๋“ค๊ธฐ ๊ฐ€์žฅ ๋จผ์ € ๋“œ๋กญ๋‹ค์šดํ•  ๋ทฐ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋ฒ„ํŠผ์€ x ์ขŒํ‘œ๋ฅผ ๋น„์œจ์— ๋”ฐ๋ผ ์„ค์ •ํ•ด์ฃผ์—ˆ๋Š”๋ฐ ๊ฐ€์šด๋ฐ ์žˆ๋Š” ๊ฒƒ์„ ์ค‘์•™์— ๋‘๊ณ  ์–‘์ชฝ์œผ๋กœ ๋น„์œจ์— ๋งž๊ฒŒ ๋ฐฐ์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. final class DropDownView: UIView { // ์‹ ๊ณ  ๋ฒ„ํŠผ let reportButton = UIButton().then { $0.configuration = .menuStyle(title: "์ƒˆ์‹น ์‹ ๊ณ ", im..

iOS/Swift 2022.03.02

[swift] UILabel intrinsicContentSize ํ™œ์šฉ๋ฐฉ๋ฒ•

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ UILabel์˜ intrinsicContentSize์— ๋Œ€ํ•ด์„œ ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ์—์„œ CollectionViewCell์˜ ํฌ๊ธฐ๋ฅผ Cell์•ˆ์— ์žˆ๋Š” Label์˜ ํ…์ŠคํŠธ ๊ธธ์ด, ํฐํŠธ์˜ ์‚ฌ์ด์ฆˆ์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ์ฃผ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•๋“ค ์ค‘์—์„œ IntrinsicContentSize๋ฅผ ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ  ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ์ง€ ๋ฐฉ๋ฒ•์„ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. intrinsicContentSize - ์ฝ˜ํ…์ธ ์˜ ๋ณธ์งˆ์ ์ธ ์‚ฌ์ด์ฆˆ UILabel ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ UIButton, UISwitch, UITextField์—๋„ ์žˆ๋Š” ํ”„๋กœํผํ‹ฐ๋กœ ํ•ด๋‹น ๊ฐ์ฒด์˜ Width์™€ Height์˜ ๊ณ ์œณ๊ฐ’์œผ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. UIView์—๋Š” ์—†์œผ๋ฉฐ UISlider์—๋Š” Width๊ฐ’๋งŒ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. AutoLayou..

iOS/Swift 2022.02.23
๋ฐ˜์‘ํ˜•