swiftUI
-
SwiftUI์์ ์ธํฐ๋ํฐ๋ธ ํธ์ ๋ค๋น๊ฒ์ด์ ์ฌ์ฉํ๊ธฐSwiftUI 2024. 12. 12. 18:46
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์์ ์ฝ๊ฒ ์ธํฐ๋ํฐ๋ธ ํธ์ ๋ค๋น๊ฒ์ด์ ์ ์ฌ์ฉํ๋๊ฑธ ๊ตฌํํด๋ณด๋ ค๊ณ ํฉ๋๋ค ๐๐ป ๋จผ์ ์ธํฐ๋ํฐ๋ธ ํธ์ ๋ค๋น๊ฒ์ด์ ๋ ๋ค์ํ ์ฐ์์ด ์์๊ฑด๋ฐ, ํ์ฌ ์ ๊ฐ ํ๊ณ ์ ํ๋ ๊ฒฐ๊ณผ๋ฌผ๋ถํฐ ๊ณต์ ํด๋ณผ๊ป์! ๋๋ฅ - ๐ ์ด๋ฐ๊ฑธ ํด๋ณด๋ ค๊ณ ํฉ๋๋ค! ์ฆ, ํญ๋ทฐ์ ๊ฐ์๊ฑธ ์ฌ์ฉํ์ง ์๊ณ ์ฃ์ง ์ค์์ดํ๋ฅผ ํตํด ์ด์ ๊ณผ ์ดํ ๋ทฐ๋ก ์ฌ๋ผ์ด๋ ํ์์ผ๋ก ์์ฐ์ค๋ฝ๊ฒ ์ ํ๋๋๋ก ์ธํฐ๋ํฐ๋ธ ํธ์ ๋ค๋น๊ฒ์ด์ ์ SwiftUI์ ์น์ด๋ณด๋ ค๊ณ ํฉ๋๋ค ๐๐ป ๊ทธ๋ผ ํ๋ฒ ์์ํด๋ณผ๊น์? ์ธํฐ๋ํฐ๋ธ ํธ์ ๋ค๋น๊ฒ์ด์ ๊ตฌํํ๊ธฐ๋จผ์ ์ ๊ฐ ํ๋ ๋ฐฉ์์ผ๋ก๋ SwiftUI์์๋ง ๋ชจ๋ ๊ฑธ ํด๊ฒฐํ ์ ์์ด์.๊ทธ๋ ๊ธฐ์ UIKit์ UINavigationController๋ฅผ ์ฑํํ ๋ณ๋์ InteractivePushNavi..
-
์นด์นด์คํก ๊ณต์ ํ๊ธฐ (๋ฉ์์ง ํ ํ๋ฆฟ)iOS 2024. 12. 5. 18:58
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ํํ ๋ง์ด ์ฌ์ฉํ๋ ์นด์นด์คํก ๊ณต์ ๋ฅผ ํด๋ณผ๊ฑด๋ฐ, ํด๋น ๊ณต์ ๋ฅผ ์ปค์คํ ํ๊ฒ ๋ง๋ค์ด๋ณด๋ ค๊ณ ํด์! ๐๐ป ์๋ฅผ๋ค์ด์ ๊ทธ๋ฅ ๋งํฌ๋ ์ด๋ฏธ์ง๋ง ๋ณด๋ด๋๊ฒ์ด ์๋๋ผ ์นด์นด์ค SDK์ ๊ธฐ๋ฅ์ ์ด์ฉํด ํด๋น ์นดํก ๊ณต์ ๋ฉ์์ง์ ๋ฒํผ์ ๋์ด ๋ค๋ฅธ ๋์์ ํ๋ค๋์ง ๋ฑ์ ๊ตฌํํด๋ณด๋ ค ํฉ๋๋ค ๐ ๊ทธ๋ผ ๋ฐ๋ก ์์ํด๋ณผ๊น์? ์นด์นด์คํก ๊ณต์ ํ๊ธฐ (๋ฉ์์ง ํ ํ๋ฆฟ์ ํ์ฉํ)๊ฐ์ฅ ๋จผ์ ํด์ผํ ์ผ์ ๋น์ฐํ๊ฒ๋ ์นด์นด์ค SDK ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ์ ธ์ค๋๊ฒ์ด๊ฒ ์ฃ ?์ ๋ SPM์ผ๋ก ๊ฐ์ ธ์์ต๋๋ค. ํด๋น SDK๋ฅผ ์ฐ๋ฆฌ SPM์์ ์ถ๊ฐํ๋ฏ์ด ์ฝ๊ฒ ๊ฒ์ํ์ฌ ๊ฐ์ ธ์ต๋๋ค.์ด๋ ์ฌ๋ฌ ํจํค์ง ํ๋ก๋ํธ๋ก ์ฌ๋ฌ๊ฐ๊ฐ ๋ณด์ผํ ๋ฐ ์ฌ๊ธฐ์ ํ์ํ๊ฒ๋ง ์ถ๊ฐํ์ ๋ ๋ฉ๋๋ค!Add to Target์ ๊ผญ ํด๋น ํ๋ก์ ํธ ํ๊ฒ์ผ๋ก ๋ง์ถฐ์ค์ผ์ง ์๊ทธ๋ฌ๋ฉด i..
-
SwiftUI - ํค๋ณด๋ ๋ ธ์ถ ์ฌ๋ถ์ ๋ฐ๋ฅธ ๋ทฐ ์คํ์ ์กฐ์ SwiftUI 2024. 11. 29. 00:40
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ํค๋ณด๋ ๋ ธ์ถ ์ฌ๋ถ์ ๋ฐ๋ผ ๋ทฐ๋ฅผ ํค๋ณด๋์ ๊ฐ๋ฆฌ์ง ์๊ณ ๋ํ๋๋๋ก ์คํ์ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ํ๋ฒ ๊ตฌํํด๋ณผ๊นํด์ ๐๐ป ํค๋ณด๋ ๋ ธ์ถ ์ฌ๋ถ์ ๋ฐ๋ฅธ ๋ทฐ ์คํ์ ์กฐ์ SwiftUI๋ก ํ ์คํธ ํ๋๋ ํ ์คํธ ๋ทฐ๋ฅผ ์ฌ์ฉํ ๋ ํค๋ณด๋๊ฐ ๋ ธ์ถ๋๊ณ ๋ทฐ์ ์์ญ์์ ์ฌ์ฉ์ฑ ์ด๋ ค์์ ๊ฒช๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์ด์ ๐ ์๋ฅผ๋ค์ด ์ตํ๋จ์ ํ ์คํธ ํ๋๊ฐ ๊ทธ๋ ค์ง๊ณ ์๊ณ ํ ์คํธ ํ๋๋ฅผ ํฌ์ปค์ฑ ํ์๋, ํค๋ณด๋๊ฐ ๋ ธ์ถ๋๋๋ฐ, ํค๋ณด๋ ์์ญ์ด ์ด๋ ํ ๋ทฐ๋ค์ ๊ฐ๋ฆฌ๊ณค ํฉ๋๋ค. ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด์๋ ํค๋ณด๋๊ฐ ๋ ธ์ถ๋ ๋ ํด๋น ํ ์คํธ ํ๋ ์์ญ์ ์คํ์ ์ ์กฐ์ ํ์ฌ ํค๋ณด๋์ ๊ฐ๋ฆฌ์ง ์๊ณ ๋ทฐ๋ฅผ ๋ค ๋ณด์ด๋๋ก ํด๋ณผ ์ ์์ด์! ์ฌ์ค SwiftUI๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํค๋ณด๋ ํํผ ๋์์ ์ ๊ณตํด์ฃผ๊ณ ์์ด์.๊ทธ๋์ ๋จ์ํ๊ฒ ํ ์คํธ ํ..
-
SwiftUI - refreshable ScrollViewSwiftUI 2024. 11. 22. 20:40
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ refreshable ๊ธฐ๋ฅ์ ๊ฐ์ง ScrollView๋ฅผ ๋ง๋ค์ด๋ณด๋ ค๊ณ ํฉ๋๋ค ๐๐ป ์ฌ์ค, ์ด์ SwiftUI์์ refreshable์ด๋ผ๋ ๋ทฐ ๋ชจ๋ํ์ด์ด๊ฐ ์กด์ฌํฉ๋๋ค. ๊ด๋ จํด์ ํฌ์คํ ์ ์๋์์ ์ ๋ฆฌํด๋ดค์ด์! SwiftUI - refreshable์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์ List์์ ์ฌ์ฉ ๊ฐ๋ฅํ refreshable์ด๋ผ๋ ์๋ก ๊ณ ์นจ ๊ธฐ๋ฅ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐ ์ฐ์ ํด๋น ๊ธฐ๋ฅ์ iOS 15 ๋ถํฐ ์ฌ์ฉ์ด ๊ฐ๋ฅํด์! ์ฐธ๊ณ ๋ก WWDCgreen1229.tistory.com ์์ฝํ์๋ฉด, ์ฌ์ค ์์ฃผ ์ ์ฉํ ๋ชจ๋ํ์ด์ด์์.์คํฌ๋กค ํ๊ฒฝ์์ ์ต์๋จ์์ ์๋๋ก ๋๋๊ทธ ํ์ ์ ์๋ก๊ณ ์นจ ๋๋ ๊ธฐ๋ฅ์ ์์ฃผ ์์ฝ๊ฒ ๊ตฌํํด์คฌ์ผ๋๊น์..!! ๊ทธ๋ฐ..
-
Pagination (feat. SwiftUI & MVVM)SwiftUI 2024. 11. 15. 18:56
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ํ์ด์ง๋ค์ด์ ๊ธฐ์ด์ ๋ํด ๊ตฌํํด๋ณด๋ ค ํฉ๋๋ค ๐๐ป๊ทผ๋ฐ, SwiftUI์ MVVM์ ๊ณ๋ค์ธ.. ๊ฑฐ๊ธฐ๋ค Concurrency๋ ๊ณ๋ค์ธ~ ์ฌ์ค ๊ฐ๋ ์ ์ผ๋ก ์ด๋ ค์ด๊ฒ ์ ํ ์๋๊ธฐ์ ๋ฐ๋ก ๋ค์ด๊ฐ๋ณด๊ฒ ์ต๋๋ค! Pagination?ํ์ด์ง๋ค์ด์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ํ์ด์ง๋ก ๋๋ ์ ๋ค๋ฃจ๋ ๊ธฐ์ ์ด์ฃ .์๋ฅผ ๋ค์ด, ์๋ฒ์ ํต์ ์ํด์ ๊ฒ์๊ธ์ ๋ณด์ฌ์ค์ผํ๋ ๋ฐ์ดํฐ๊ฐ ๋ฌด์ํ ํ ๋ง๊ฐ์ฏค ๋ง๋ค๊ณ ์๊ฐํด๋ณผ๊ป์.๊ทธ๋ฌ์๋ ์ด ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ํ๋ฒ์ ๋ค ๊ฐ์ ธ์ค๊ณ ๋ ๋ณด์ฌ์ค๋ค๋๊ฑด ๊ต์ฅํ ์ฑ๋ฅ ๋ญ๋น์ผ๊ฑฐ์์.ํ ํ๋ฉด์ ์คํฌ๋กค์ ๋ด๋ฆฌ๊ฑฐ๋ ๋ค์ ํ์ด์ง๋ก ๋์ด๊ฐ์ง ์๋ ์ด์ 10๊ฐ์ ๋๋ง ๋ณด์ฌ์ค ์ ์์๋ ๋จ๋์ง 9990๊ฐ๋ ์์ง ๋ณด์ฌ์ค์๋ ์๋๋ฐ๋ ๋ค๊ณ ์์ด์ผ ํ๋๊น์ ๐ฅฒ ๊ทธ๋์, ํ์ด์ง๋ค์ด์ ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์..
-
SwiftUI๋ก ํ ๋๋ฆฌ ์ค๋ฒ๋ ์ด ํจ๊ณผ ๋ง๋ค๊ธฐ (feat. ZStack)SwiftUI 2024. 11. 14. 15:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI๋ก ํ ๋๋ฆฌ ์ค๋ฒ๋ ์ด ํจ๊ณผ๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ตฌํํด๋ณด๋ ค๊ณ ํฉ๋๋ค ๐๐ป SwiftUI๋ก ํ ๋๋ฆฌ ์ค๋ฒ๋ ์ด ํจ๊ณผ ๋ง๋ค๊ธฐ์ฌ์ค ํ ๋๋ฆฌ ์ค๋ฒ๋ ์ด ํจ๊ณผ๋ผ๊ณ ํ๋ฉด ์ด๋ค๊ฑด์ง ๊ฐ์ด ์์ฌ ์ ์์ฃ !ํ ๋๋ฆฌ์ ์๋์ฐ๋ฅผ ์ ํ๊ฑฐ๋ ์ด๋ค ๋ทฐ๋ฅผ ์ค๋ฒ๋ ์ด๋ก ๊น๋๊ฒ์ ๋งํ ์๋ ์๊ณ , ๋๋ฌด ์ฌ์ฉ๋ฒ์ด ๋ค์ํ๊ธฐ์ ๊ตฌํ๋๋ ๊ฒฐ๊ณผ๋ฌผ์ ์์ํ์๋ ๋๋ฌด ๋ฌด๊ถ ๋ฌด์งํ์ฃ ! ๊ทธ๋์, ๋จผ์ ์์๋ฅผ ๋ณด์ด๊ณ ์ด๋ฐ๊ฑธ ๋ง๋ค์ด๋ณด๋ ค๊ณ ํ๋ค~ ์๊ฐํด๋ณผ๊น ํฉ๋๋ค ๐ ์๋ฐ ๋ทฐ๋ฅผ ๋ง๋ค์ด๋ณด๋ ค๊ณ ํด์.์ฝ๊ฐ ๊ณต์ฑ ๋์์ธ ๊ฐ๊ธฐ๋ํ์ฃ ?์ฌ๊ธฐ์ ์ค๋์ ์ฑ๋ฆฐ์ง๋ ์ ์ด๋ก์ ๋ทฐ๋ฅผ ํ ๋๋ฆฌ ์์ ๊ฒน์ณ ์ฌ๋ฆฌ๋๊ฒ๋๋ค.์ฆ, ๊ณต์ฑ ์์๋ ์คํ๋ง ๋ถ๋ถ์ด ์๋๋ฐ, ์ด๋ป๊ฒ ๋ณด๋ฉด ์ ์ด๋ก์ ๋ทฐ๊ฐ ์คํ๋ง์ ํํํ๋๊ฑฐ๋ผ๊ณ ๋ณด๋ฉด ๋ ๊ฒ ๊ฐ์์. ๊ฐ์ฅ ..
-
SwiftUI์ Text์ stroke ์ ์ฉํ๊ธฐSwiftUI 2024. 11. 7. 18:55
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์ Text์ ํ ๋๋ฆฌ์ stroke๋ฅผ ๋ฃ๋ ๋ฐฉ๋ฒ์ ๋ํด ํ๋ฒ ๊ตฌํํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป ๊ฐ๋จํ๊ธฐ๋ ํ๊ณ ์ ๊ฐ ํ์ํด์ ํ๋ฒ ๋ชจ๋ํ์ด์ด๋ก ๋นผ๋ณด๋ฉด์ ๋ง๋ค์ด๋ณผ๊นํด์! SwiftUI์ Text์ stroke ์ ์ฉํ๊ธฐSwiftUI์์๋ Text์ stroke๋ฅผ ๋ฃ์ ์ ์๋ ๋ชจ๋ํ์ด์ด๊ฐ ์๋๊ฑธ๋ก ์๋๋ค ๐ฅฒ ๊ทธ๋์ ์ฐ๋ฆฌ๋ UIKit์ ํ์ฉํ๊ฑฐ๋ SwiftUI์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ํ์ด์ด๋ค์ ์ด์ฉํด stroke๋ฅผ ๋ง๋ค์ด ๋ณผ ์ ์์ด์! ์ฐ์ shadow๋ฅผ ์ด์ฉํด์ ํ ๋๋ฆฌ๋ฅผ ๊ตฌํํด๋ณผ ์ ์์ด์. shadow๋ ๊ทธ๋ฆผ์๋ฅผ ์ฃผ๋ ํจ๊ณผ๋ฅผ ๋งํ์ฃ ? struct ContentView: View { var body: some View { Text("ํ ๋๋ฆฌ ํจ๊ณผ") ..
-
SwiftUI๋ฅผ ์ด์ฉํ ์ธํฐ๋ํฐ๋ธ ์ ๋๋ฉ์ด์ SwiftUI 2024. 11. 1. 18:50
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ์ ๊ฐ ํ์ํด์ ๊ตฌํํด๋ณด๋ค๊ฐ ์ด๋ฐ๊ฒ๋ SwiftUI๋ก ์ฝ๊ฒ ๊ตฌํํ ์ ์๊ตฌ๋ ํ๋๊ฑธ ์๊ฐํด๋ณผ๊น ํฉ๋๋ค ๐๐ป ๋ฐ๋ก SwiftUI๋ฅผ ์ด์ฉํ ์ธํฐ๋ํฐ๋ธ ์ ๋๋ฉ์ด์ ์ด ๊ทธ ์ฃผ์ ์ ๋๋คใ ใ ์ด๋ฒ ํฌ์คํ ์ ๊ฐ๋ ์ ์ธ ์ค๋ช ๊ทธ๋ฐ๊ฒ๋ณด๋ค ์ค์ ๊ตฌํ์ ๊ธฐ๋ฐํ๊ณ ์๊ธฐ์ ์ฝ๋๋ฅผ ์ฃผ์๊น๊ฒ ๋ณด๋๊ฒ์ด ์ข์๊ฒ ๊ฐ์ต๋๋ค! โ ๏ธ ์ธํฐ๋ํฐ๋ธ ์ ๋๋ฉ์ด์ ์ธํฐ๋ํฐ๋ธ๊ฐ ๋ญ๊น์? ์ด๋ฐ ๋ป์ ๊ฐ์ง๊ณ ์๋ค๊ณ ๊ตฌ๊ธ AI, ์ฌ๋ฏธ๋์ด๊ฐ ๋งํด์ฃผ๋ค์. ์ฆ, ์ธํฐ๋ํฐ๋ธ ์ ๋๋ฉ์ด์ ์ด๋ผ๋๊ฒ์ ์๋ฐฉํฅ์ ์ ๋๋ฉ์ด์ ์ ๋ปํ๊ฒ ๋๋๊ฒ๋๋ค.์ฌ์ฉ์์ ์ ๋ ฅ์ด๋ ๋์์ ๋ฐ์ํด ๋ณํํ๋ ๋์ ์ธ ์ ๋๋ฉ์ด์ ์ ๋งํด์.๊ทธ๋ฐ ๊ตฌํ์ ์ ๋ง ๋ฌด๊ถ๋ฌด์งํ๊ฒ ์๊ฐํ๋๋ก ํผ์ณ๋ณผ ์ ์๊ฒ ์ง๋ง, ์ ๋ ํ๋์ ์์๋ฅผ ๊ฐ์ง๊ณ ๊ทธ ์ธํฐ๋ํฐ๋ธ ์ ๋๋ฉ์ด์ ๊ตฌํ์ ์ดํด..