๋ฐ˜์‘ํ˜•

swift toast 1

[ 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
๋ฐ˜์‘ํ˜•