[Lv.1] iOS 17 ์ฑ ๊ฐ๋ฐ ๊ธฐ์ด - SwiftUI๋ก ์์ํ๊ธฐ
iOS ์ฑ๊ฐ๋ฐ์ ๋์ธ์ธ SwiftUI, ํ์๋ก ์์์ผ ํ ์ฌํญ๊ณผ ์ต์ ๊ฐ๋ฐ ํธ๋๋์ธ MVVM Architecture ๋ฐํ์ผ๋ก ์ค์ AppStore ์ ์๋ ์ฑ์ ํจ๊ป ๋ง๋ค์ด ๋ด ๋๋ค. (๐ ๋ชจ๋ ๊ฐ์ ์๋ฃ PDF ๋ฐ ์ค์ต Code ํ์ผ์ ์ ๊ณตํฉ๋๋ค)
์๊ฐ์ 522๋ช
๋์ด๋ ์ด๊ธ
์๊ฐ๊ธฐํ ๋ฌด์ ํ

- ํด๊ฒฐ
์๋ฆฌ๊ฐ ใ ใ
ํ์ชฝ์์๋ง ๋ค๋ ค์ ใ ใ
iosswiftswiftui์นด์นด์ค๊ณต์ฑ-๊ฐ๋ฐ๊น์ฑ๊ด
ใป
3๋ฌ ์
0
36
2
- ํด๊ฒฐ
index์ indexSet
fruitArray ๋ฅผ deleteํ๋ ํจ์์์index๊ฐ ์๋ indexSet๊ณผ remove(at:)์ด ์๋ remove(atOffsets:)๋ฅผ ์ฌ์ฉํ์ จ๋๋ฐ ์
iosswiftswiftui์นด์นด์ค๊ณต์ฑ-๊ฐ๋ฐ์ต์ํ
ใป
5๋ฌ ์
0
46
2
- ๋ฏธํด๊ฒฐ
NavigationBarItems Deprecated
NavigationbarItem -> .toolbar๋ก ๋ฐ๋ ์ฝ๋๊ฐ ๊ถ๊ธํฉ๋๋ค.
iosswiftswiftui์ต์ํ
ใป
6๋ฌ ์
0
74
3
- ๋ฏธํด๊ฒฐ
Xcode version ๋ฌธ์
๊ฐ์ ๊ด๋ จ๋ ์ง๋ฌธ์ ์ธ์ ๋ ํ์์ ๋๋ค ๐์ฝ๋ ๊ด๋ จ ์์ธํ๊ฒ ์์ฑํด์ฃผ์๋ฉด ๋ ์ข์์! (์์ธ์ฝ๋๋ฅผ ๋ถ์ฌ๋ฃ
iosswiftswiftuimiso lim
ใป
0
178
2
- ๋ฏธํด๊ฒฐ
GalleryView ์์ฑ์, @State? @Bidnable? ์ ์ฐจ์ด์ ์ด ๋ญ์ง ๊ถ๊ธํฉ๋๋ค.
IOS17๋ก ์ ๋ฐ์ดํธ ๋จ์ ๋ฐ๋ผ,@Observable ๋งคํฌ๋ก๋ฅผ ํ์ฉํ์ฌ ViewModel์ ํ์ฉํ๋ฉด,์ํ ๋ณํ๋ฅผ ๊ฐ์งํ์ฌ 'View์์ ์๋์ ์ผ๋ก ์ ๋ฐ์ดํธ ๋๋ค.'๋ผ๊ณ ์๊ณ ์์ต๋๋ค. @Observable
iosswiftswiftuiycc3819
ใป
0
282
2
- ๋ฏธํด๊ฒฐ
ํ์ด์ง ์ด๋์ ๊ดํด ์ง๋ฌธ์ด ์์ต๋๋ค !
์๋ ํ์ธ์ ๊ฐ์ ๋๋ฌด ์ ๋ฃ๊ณ ์์ต๋๋ค ! ์์ ์ ์ฑ ๋ง๋ค๋ค๊ฐ ๊ถ๊ธํ๋ ๊ฒ์ด ๋๊ฐ์ง ์ ๋ ์์ด ์ฌ์ญค๋ณด๋ ค๊ณ ํฉ๋๋ค. ํ์ด์ง ํ์ด์ง ๊ฐ ์ฐ๊ฒฐ๋๋ ๋๋์ด ์๋๋ผ ์์ ๋ค๋ฅธ ํ์ด์ง๋ก ๋์ด๊ฐ๊ณ ์ถ์๋ฐ,Tab, Navigation
iosswiftswiftuioilater
ใป
0
332
2
- ๋ฏธํด๊ฒฐ
scrollTransition ์์ phase ๊ฐ์ ์ฐ์ด๋ณด๊ณ ์ถ์ต๋๋ค.
์๋ ํ์ธ์..scrollTransition ์์phase ๊ฐ์ ์ค์๊ฐ์ผ๋ก ํ์ธํด ๋ณด๊ณ ์ถ์ต๋๋ค.swiftUI ์์ print ๋ฅผ ํตํด ์ฝ์์ ๋๋ฒ๊น ํ๊ณ ์ถ์๋ฐ ์ด๋ป๊ฒ ํ๋ฉด ์ข์๊น์ ?
iosswiftswiftui๋ํ_Langpeu
ใป
0
269
2
- ๋ฏธํด๊ฒฐ
๊ฐค๋ฌ๋ฆฌ์์ ์ฌ๋ผ์ด๋ ๋ณ๊ฒฝ์ gridSwitch ๊ฐ ๋๋ฒ ์คํ๋ฉ๋๋ค.
์๋ ํ์ธ์. ์ด์ ๋ฌธ์์ ๋ํ ๋ต๋ณ ์ ํ์ธํ์ต๋๋ค.๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค. //GridLayout @Published var gridLayout: [GridItem] = [GridItem(.flexible())
iosswiftswiftui๋ํ_Langpeu
ใป
0
292
2
- ๋ฏธํด๊ฒฐ
์ ํ๋ธ ์์ ํ๋ ์ด์ ์๋ ์ด์ ๋ฌธ์
์๋ฎฌ๋ ์ดํฐ๋ ๋๋ฐ์ด์ค์์YoutubeView ์ ๋ก๋ฉ๋ ์ ํ๋ธํ๋ฉดํ๋ ์ด๋ฒํผ ๋๋ฅด๋ฉด ์๋์ฒ๋ผ ์๋์ด ์ญ ๋น๋๋ค.์ด๋ป๊ฒ ํด๊ฒฐ ํด์ผ ํ ๊น์ ?(์์์ด ํ๋ ์ด๋ ๋๋๋ฐ, ๋ก๊ทธ์ ์ ๋ ๊ฒ ๋์ค๋ค์) <
iosswiftswiftui๋ํ_Langpeu
ใป
0
507
1
- ํด๊ฒฐ
ListBasic ๊ฐ์ ๋ฌธ์ - ๋ธ๊ธฐ id ์ค๋ฅ ๋ฐ move ์ค์๋
struct ListBasic: View { //property @State var fruits:[String] = [ "์ฌ๊ณผ","์ค๋ ์ง","๋ฐ๋๋","์๋ฐ" ] @State var meats:[S
iosswiftswiftui๋ํ_Langpeu
ใป
0
212
1
- ํด๊ฒฐ
LazyGrid ๊ฐ์ ๋ฌธ์ - ๋ฐ์ดํฐ๊ฐ 30๊ฐ ์ธ๋ฐ ๋ก์ฐ๊ฐ 3์ค์ด๋ฉด 27๊ฐ๋ง ๋ ธ์ถ๋จ
// 2. LazyHGrid struct LazyGridBasic2: View { // LazyHGrid // title ์ 1000 ๊ฐ ๋ณ์๋ก ์์ฑ // ["๋ชฉ๋ก 1","๋ชฉ๋ก 2", ... "๋ชฉ๋ก 30"] [String]
iosswiftswiftui๋ํ_Langpeu
ใป
0
259
1
- ํด๊ฒฐ
ScrollView์์ ์ง๋ฌธ ์์ต๋๋ค.
๊ฐ์์๋ฃ์ ์๋ ํ์ผ์๋ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์๋๋ฐ ์๋ก ๋ง๋ ํ์ผ์์ ForEach ๊ตฌ๋ฌธ์ 'Argument passed to call that takes no arguments' ๋ผ๊ณ ๋จ๋ค์...ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๊ฒ ์ด์ ์ง๋ฌธ ๋จ๊น๋๋ค.<i
iosswiftswiftuiVnPaz
ใป
0
274
1
- ํด๊ฒฐ
MVVM์์ ์ฒ์
import SwiftUI @main struct mountainApp: App { var body: some Scene { WindowGroup { AuthView() .
iosswiftswiftui์ค๋๊ฐ๋ฐ์
ใป
0
208
1
- ํด๊ฒฐ
ExtractView, @Binding ๊ฐ์์์ .previewLayout(.sizeThatFits) ํจ์ ๊ด๋ จํด์ ์ง๋ฌธ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์ ๊ฐ์ฌ๋. ํ์ฌ ExtractView, @Binding ๊ฐ์๋ค์ ๋ฃ๊ณ ์๋๋ฐ์ ์ฒด๋ ์ด์์ ์ฌ์ด์ฆ๋ฅผ ์กฐ์ ํด์ฃผ๋ .previewLayout(.sizeThatFits) ๋ฉ์๋๊ฐ ํ๋ฆฌ๋ทฐ์์ ์ ์ฉ์ด ์๋๋๋ฐ ์ด๊ฒ๋ iO
iosswiftswiftui์ด์ฐ
ใป
0
332
2
- ํด๊ฒฐ
iOS 15 ๋ฒ์ ์ดํ ํ๋ฆฌ๋ทฐ ๋ฌธ์ ๊ด๋ จํด์ ์ง๋ฌธ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์ Jacob ๊ฐ์ฌ๋.์ข์ ๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค. ํ์ฌ ๋ค๋ฅธ ์ง๋ฌธ์ ๋ต๋ณํด์ฃผ์ ๊ธ์ ํ์ธํด์ iOS 15๋ฒ์ ์ ๋ฐ์ดํธ ํ ํ๋ฆฌ๋ทฐ ๋ฌธ์ ๋ก ๋ทฐ๋ฅผ ์ถ๊ฐํ๋ฉด ์๋ก์ด ํ๋ฆฌ๋ทฐ๊ฐ ์๊ธฐ์ง ์์์ ์๋ก์ด ํด๋์ค๋ ๊ตฌ์กฐ์ฒด๋ฅผ ๋ง
iosswiftswiftui์ด์ฐ
ใป
0
335
2
- ํด๊ฒฐ
VStack์ผ๋ก ํ๋ฆฌ๋ทฐ ์์ฑ
์๋ ํ์ธ์ ๊ฐ์ฌ๋ !Frame ๊ฐ์์ค์ ๊ฐ์์ฒ๋ผ VStack์ ์ถ๊ฐํ
iosswiftswiftui๋ฐ์์ง
ใป
0
376
2
- ํด๊ฒฐ
MVVM ํด๋ ์์์ Preview๊ฐ ์๋ํ์ง ์์ต๋๋ค.
Basic ํด๋ ๋ฐ๋ก ๋ฐ์ UserModelBasicViewํ์ผ์ด ์กด์ฌํ๋ฉด Preview๊ฐ ์ ๋์ต๋๋ค. ๊ทธ๋ฌ๋ MVVMํด๋ ์์ Viewํด๋ ์์ UserModelBasicViewํ์ผ์ด ์กด์ฌํ๋ฉด Preview๊ฐ ๋นจ๊ฐ ๋ฐ์ค์ฒ๋ผ ๋ฌธ
iosswiftswiftui์ค๋๊ฐ๋ฐ์
ใป
0
242
1
- ํด๊ฒฐ
Preview ์ง๋ฌธ
์๋ ํ์ธ์!!ํ์ฌ ImageBasic ํํธ๋ฅผ ๋ณด๊ณ ์๋๋ฐ, ํ์ฌ ์ Xcode์์๋ ์ ์๋ ์์ ๋ ์๋ ํ๋ฆฌ๋ทฐ ํด๋ฐ์ค(?)์ ํ๋์ ๊ฐ์ด๋๋ผ์ธ(frame์ width, height๋ฅผ ํ์ํด์ฃผ๋?)๋ ๋ณด์ด์ง ์๋๋ฐ, ์ด๊ฒ๋ค์ ๋ณด์ด๊ฒ ์ค์ ํ๋ ค๋ฉด ์ด๋ป
iosswiftswiftuihellooguy
ใป
0
405
2
- ํด๊ฒฐ
LazyGrid ์ง๋ฌธ ์์ต๋๋ค.
์๋ ํ์ธ์ Netflix๋ ์ธ์คํ ๋ง๊ณ Printerest์ ๊ฐ์ด ๊ทธ๋ฆฌ๋ Item์ ๋์ด๋ฅผ ์๋ก ๋ค๋ฅด๊ฒ ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ๋์?<img src="https://cdn.inflearn.com/public/files/posts/edd8a1
iosswiftswiftuiJulie
ใป
0
332
1
- ๋ฏธํด๊ฒฐ
Textfield ์ ๋ ฅ์ ํ๊ธ ์์ ๋ชจ์ ๋ถ๋ฆฌ ํ์์ด ๋ฐ์ ํฉ๋๋ค
์ต๊ทผ Xcode ์ ๋ฐ์ดํธ ์ดํ textfield์ ํ๊ธ ์ ๋ ฅ์ ์์ ๋ชจ์์ด ๋ถ๋ฆฌ ๋์ ์ ๋ ฅ์ด ๋ฉ๋๋ค .ใฑ ใ ใด ใ ใ ใ ใ ฃ ์ด๋ฐ์์ผ๋ก ์ ๋ ฅ์ด ๋ฉ๋๋ค๐ญ<img src="https://cdn.inflearn.com/public/files
iosswiftswiftuiMason[๋ฌด์ก.Choi]
ใป
1
6,456
2






