Notice
Recent Posts
Recent Comments
Link
ยซ   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
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กiOSํ”„๋กœ์ ํŠธ/๐Ÿชท ๋‘๊ตฟํ•ด์ปคํ†ค(HappyHouse) (13)

lgvv98

[RxSwift] Textfield maxLength

โœ… ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” rx๋ฅผ ์ด์šฉํ•˜์—ฌ ํ…์ŠคํŠธ ํ•„๋“œ์˜ ์ตœ๋Œ€ ๊ธ€์ž ๊ธธ์ด๋ฅผ ์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ์˜ˆ์ •์ด์•ผ. ์ €๊ธฐ ๋ณด๋ฉด ๋…„,์›”,์ผ์˜ ๊ฒฝ์šฐ์—๋Š” ๊ธ€์ž ๊ธธ์ด๋ฅผ ์ œํ•œํ•  ํ•„์š”๊ฐ€ ์žˆ์–ด. ์˜ˆ๋ฅผ ๋“ค๋ฉด, ๋…„๋„์˜ ๊ฒฝ์šฐ ์•„์ฃผ ์ƒ์‹์ ์ธ ๋ฒ”์œ„์—์„œ 4๊ธ€์ž๋ผ๋˜๊ฐ€, ์›”,์ผ,์‹œ,๋ถ„์€ ์ตœ๋Œ€ 2๊ธ€์ž ๊นŒ์ง€๋งŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์ง€. ๊ทธ๋Ÿผ ์ด๊ฑธ ์–ด๋–ป๊ฒŒ ์ œํ•œํ•  ์ˆ˜ ์žˆ์„๊นŒ? rx๋ฅผ ์ด์šฉํ•˜์—ฌ! โœ… ๊ธ€์ž ๊ธธ์ด๋ฅผ ์ œํ•œํ•˜๋Š” ๋ฐฉ๋ฒ• 1๏ธโƒฃ ๊ธ€์ž ๊ธธ์ด๋ฅผ ์ œํ•œํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. private func HourTextField2(_ str : String) { // ์‹œ๊ฐ„ ์ตœ๋Œ€ 2์ž๋ฆฌ๊นŒ์ง€ if str.count > 2 { let index = str.index(str.startIndex, offsetBy: 2) self.HourTextField.text = String(..

[iOS] TableView, CollectionView lastIndex ์ฐพ๊ธฐ

โœ… ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ์˜ˆ์ •์ด์•ผ. ์šฐ์„  ์•„๋ž˜์˜ ์ด๋ฏธ์ง€๋ฅผ ๋ณด์ž ์œ„์ฒ˜๋Ÿผ ๊ตฌํ˜„์„ ํ•ด์•ผํ•˜๋Š” ์ผ์ด ์ƒ๊ฒผ๋Š”๋ฐ, ๋‚˜๋Š” ์ปฌ๋ ‰์…˜ ๋ทฐ๋ฅผ ์ด์šฉํ•ด์„œ ๊ตฌํ˜„ํ–ˆ์–ด. ๊ทธ๋Ÿฌ๋‚˜ ๋งˆ์ง€๋ง‰ index์˜ ๊ฒฝ์šฐ์—๋Š” ์œ„์— ์ด๋ฏธ์ง€๋ฅผ ๋ณด๋ฉด ๋‹ค๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•ด์•ผํ•˜๋Š”๋ฐ, ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ๊ตฌํ•  ํ•„์š”์„ฑ์„ ๋Š๊ผˆ์–ด. โœ… ์ปฌ๋ ‰์…˜ ๋ทฐ์—์„œ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์ฝ”๋“œ extension UICollectionView { // ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ์ฐพ๋Š” ํ•จ์ˆ˜ ๊ตฌํ˜„ํ•˜์—ฌ collectionView์ชฝ์— ๋„ฃ์–ด๋‘  Util๋กœ ๋‚˜์ค‘์— ๋นผ๊ธฐ func lastIndexpath() -> IndexPath { let section = max(numberOfSections - 1, 0) let row = max(numberOfItems(inSection: sect..

[iOS] StackView ์‚ฌ์ด์—์„œ ๊ฐ„๊ฒฉ์„ ์ฃผ๋Š”๋ฒ•

โœ… ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ์Šคํƒ๋ทฐ ์‚ฌ์ด์—์„œ ๊ฐ„๊ฒฉ์„ ์ฃผ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ์˜ˆ์ •์ด์•ผ. ์Šคํƒ๋ทฐ๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ €๊ธฐ์„œ ํ•˜๋‚˜์”ฉ ํ•ด๋ณด์ž. Alignment์™€ Distribution์„ ํ™œ์šฉํ•˜๋ฉด ok โœ… ์‹ค์ œ ๊ฐœ๋ฐœ์—์„œ ์Šคํƒ๋ทฐ ๋•Œ๋ฌธ์— ๊ณ ๋ฏผํ–ˆ๋˜ ๊ฒƒ ๐ŸŸ  ํ…์ŠคํŠธํ•„๋“œ์˜ ์ž…๋ ฅ๊ฐ’์ด ์ฃผ์–ด์ง€์ง€ ์•Š์€ ์ƒํ™ฉ์—์„œ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•ด์•ผ ํ• ๊นŒ์š”? ์œ„์— ๋ณด์ด๋Š” ์ด๋ฏธ์ง€๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š”๋ฐ ์Šคํƒ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„์‹œ ๋ฐœ๊ฒฌํ•œ ๋ฌธ์ œ์ ์ด ์Šคํƒ๋ทฐ - ํ…์ŠคํŠธํ•„๋“œ(์‹œ) - ๋ ˆ์ด๋ธ”(์ฝœ๋ก ) - ํ…์ŠคํŠธํ•„๋“œ(๋ถ„) ์ด๋Ÿฐ์‹์œผ๋กœ ๋„ฃ์—ˆ๋Š”๋ฐ, ์ฒ˜์Œ์—๋Š” ํ…์ŠคํŠธ ํ•„๋“œ์˜ ์ž…๋ ฅ๊ฐ’์ด ์ฃผ์–ด์ง€์ง€ ์•Š์•„์„œ(ํ…์ŠคํŠธ ํ•„๋“œ์˜ ๊ธธ์ด๊ฐ€ 0์ด๋ผ๋Š” ๋ง) UI๊ฐ€ ์ดˆ๊ธฐ์— ๋ฐฐ์น˜๋  ๋•Œ ๋ ˆ์ด๋ธ”์ด๋ถ„์„ ๋‹ด๋‹นํ•˜๋Š” ํ…์ŠคํŠธ ํ•„๋“œ๊ฐ€ ๋‚˜๋จธ์ง€ ๋ชจ๋“  ์˜์—ญ์„ ์–ต์ง€๋กœ ์ฑ„์šฐ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋ฌด์Šจ ๋ง์ด๋ƒ๋ฉด, ์Šคํƒ๋ทฐ์˜ ๊ธธ์ด๋ฅผ 10์ด..

[iOS] SnapKit SafeArea ๊ณ ๋ คํ•˜๊ธฐ

SnapKit SafeArea ๊ณ ๋ คํ•˜๊ธฐ โœ… ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” SanpKit์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ SafeArea๋ฅผ ๊ณ ๋ คํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ์˜ˆ์ •์ด์•ผ. - (์—…๋ฐ์ดํŠธ) 2022.01.21 : ๊ณต๋ถ€๋ฅผ ํ•˜๋‹ค๊ฐ€ ๋ณด๋‹ˆ ๋” ์ข‹์€ ๋ฐฉ๋ฒ•์„ ๋ฐœ๊ฒฌํ•จ. - (์—…๋ฐ์ดํŠธ) 2022.05.08: SnapKit ์ •๋ฆฌ ๊ธ€ ํฌ์ŠคํŒ… ์ถ”๊ฐ€ - ์•„๋ž˜ ํฌ์ŠคํŒ…์—์„œ ์Šค๋ƒ…ํ‚ท์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ ์ธ ์‚ฌํ•ญ์„ ์ง€์†์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‚ด๊ฐ€ ๋ณด์•„๋„ ๊ธ€์ด ๋” ์ข‹์•„์š”. 2021.08.25 - [iOS/SnapKit] - iOS Snapkit ๋‚˜๋งŒ์˜ ์ •๋ฆฌ ๋ชจ์Œ iOS Snapkit ๋‚˜๋งŒ์˜ ์ •๋ฆฌ ๋ชจ์Œ โœ… ์ด ํฌ์ŠคํŒ…์€ snapkit์— ๋Œ€ํ•ด์„œ ์–ด๋Š์ •๋„ ๊ณต๋ถ€๋ฅผ ๋งˆ์น˜๊ณ  ๋‚œ ํ›„ ๊ตฌ๊ธ€๋ง๊ณผ ๊นƒํ—ˆ๋ธŒ๋ฅผ ๋Œ์•„๋‹ค๋‹ˆ๋ฉด์„œ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•ด๋‘๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์€ ์ž๋ฃŒ๋ฅผ ๋‹ค์‹œ ํ•œ๋ฒˆ ๋ชจ์•„์„œ ์ •๋ฆฌํ•˜๋Š”..