묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
확인 버튼 만들 때 폰트 색상 화이트 주는 위치 문의드려요.
강의에 보면 확인버튼의 폰트 색상을 화이트로 줄 때 .background() 부분의 상단 또는 하단 측에 스타일을 줘도 된다고 하셨는데요. 하단 측에 .foregroundStyle(Color.white)를 주게 되면 확인 글자가 나타나지 않더라구요. 상단에만 줘야하는 것 아닌지 여쭤 봅니다.
-
미해결Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
Button(action: label:)이 강의와 달라요!
강의를 보면 Button(action: {}, label: {})로 나오는데요. 저는 같은 것을 선택했는데 아래와 같이 나오면서 에러(?)가 뜹니다.제미나이에 물어봐도 제 수준에서는 답변이 이해가 가지 않아 질문 드립니다.
-
미해결Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
warning 하나가 있는 것 같습니다. 해결방법좀 알려주세요
iOS26 환경에서 코드 작성하면 아래와 같이 warning이 발생합니다.동작상에는 문제가 없지만, 동일하게 다른 파일에서도 사용되는 함수 인데 왜 발생되는 건지 이해가 안됩니다.확인 부탁드립니다. <ProfileEditingView>28,29라인에 KFImage(url)에서 발생됩니다."import Kingfisher"도 정의 되어있고, 다른 파일에서 "KFImage()"함수에서는 warning이 발생되지 않습니다. 혹시 Kingfisher 패키지 버전때문일까요? 강제로 10.4.xx으로 하긴 했지만, 몇몇 하위 패키지는 업데이트 된것 같습니다. warning 내용>Call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context package 버전정보>{ "originHash" : "dacfd17cdf8fa9f962991925a9162eb62e278dab4974c56cd997ab2b87892aa5", "pins" : [ { "identity" : "abseil-cpp-binary", "kind" : "remoteSourceControl", "location" : "https://github.com/google/abseil-cpp-binary.git", "state" : { "revision" : "194a6706acbd25e4ef639bcaddea16e8758a3e27", "version" : "1.2024011602.0" } }, { "identity" : "app-check", "kind" : "remoteSourceControl", "location" : "https://github.com/google/app-check.git", "state" : { "revision" : "3b62f154d00019ae29a71e9738800bb6f18b236d", "version" : "10.19.2" } }, { "identity" : "firebase-ios-sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/firebase-ios-sdk", "state" : { "revision" : "eca84fd638116dd6adb633b5a3f31cc7befcbb7d", "version" : "10.29.0" } }, { "identity" : "googleappmeasurement", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleAppMeasurement.git", "state" : { "revision" : "fe727587518729046fc1465625b9afd80b5ab361", "version" : "10.28.0" } }, { "identity" : "googledatatransport", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleDataTransport.git", "state" : { "revision" : "a637d318ae7ae246b02d7305121275bc75ed5565", "version" : "9.4.0" } }, { "identity" : "googleutilities", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleUtilities.git", "state" : { "revision" : "57a1d307f42df690fdef2637f3e5b776da02aad6", "version" : "7.13.3" } }, { "identity" : "grpc-binary", "kind" : "remoteSourceControl", "location" : "https://github.com/google/grpc-binary.git", "state" : { "revision" : "e9fad491d0673bdda7063a0341fb6b47a30c5359", "version" : "1.62.2" } }, { "identity" : "gtm-session-fetcher", "kind" : "remoteSourceControl", "location" : "https://github.com/google/gtm-session-fetcher.git", "state" : { "revision" : "a2ab612cb980066ee56d90d60d8462992c07f24b", "version" : "3.5.0" } }, { "identity" : "interop-ios-for-google-sdks", "kind" : "remoteSourceControl", "location" : "https://github.com/google/interop-ios-for-google-sdks.git", "state" : { "revision" : "2d12673670417654f08f5f90fdd62926dc3a2648", "version" : "100.0.0" } }, { "identity" : "kingfisher", "kind" : "remoteSourceControl", "location" : "https://github.com/onevcat/Kingfisher", "state" : { "revision" : "dd3c422ec3088404d6f7e8c905a8318b3de12d6f", "version" : "8.6.0" } }, { "identity" : "leveldb", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/leveldb.git", "state" : { "revision" : "a0bc79961d7be727d258d33d5a6b2f1023270ba1", "version" : "1.22.5" } }, { "identity" : "nanopb", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/nanopb.git", "state" : { "revision" : "b7e1104502eca3a213b46303391ca4d3bc8ddec1", "version" : "2.30910.0" } }, { "identity" : "promises", "kind" : "remoteSourceControl", "location" : "https://github.com/google/promises.git", "state" : { "revision" : "540318ecedd63d883069ae7f1ed811a2df00b6ac", "version" : "2.4.0" } }, { "identity" : "swift-protobuf", "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-protobuf.git", "state" : { "revision" : "2547102afd04fe49f1b286090f13ebce07284980", "version" : "1.31.1" } } ], "version" : 3}
-
해결됨Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
설계 관련하여 참고할 문서나 예제 공유가 가능할까요?
안녕하세요성공적으로 완강 했습니다.진짜 왕초보 iOS 배우기 부터 듣기 시작해서 이번이 두번째 강의를 완료하였고,직접 앱을 만드니 자신감도 생겨서, 추가적인 학습도 해보려고, property wrapper, combine도 구매완료하였는데..잠시 의문이 생겨서 질문드려 봅니다. 지금까지는 강의를 들으면서 뷰간의 순서와 설계에 대해 고민 없이 강의듣고 따라 해왔는데, 직접 뭔가를 구상하고 설계를 하려고 하니 다시 뭔가 벽에 부딪히는 느낌이 드네요.혹시 설계를 하기위해 구상하거나 문서를 가볍게라도 작성해서 고민을 해보고 싶습니다.좋은 방법이나 참고할만한 예제가 있을지 문의 드립니다. 강의 중간 설명해 주시려고 만드신 문서도 있으시던데..그런 자료도 공유가 가능하신지요?
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
HStack과 VStack에서 alignment와 spacing 방향이 이해가 잘 안갑니다.
스킬 창 아래 부분은 HStack에 VStack(앉아, 엎드려, 하우스)과 VStack(손, 코) 두개의 VStack 구조로 되어 있잖아요.여기서 alignment와 spacing 방향이 너무 혼동됩니다. 처음에 간단한 구조는 이해하는 것 같았거든요. 살짝 구조가 복잡해지니까 혼동됩니다. 우선 제가 이해하고 있는 부분은 아래와 같습니다.HStack은 수평 구조이기 때문에 alignment는 top, center, bottom이고 spacing은 수평 간격이 조정되고 VStack은 수직 구조이기 때문에 alignment는 leading, center, tailing이고 spacing은 수직 간격이 조정 되는 것이 맞을까요?혹시 맞다면 이 정도만 이해하고 있으면 될까요?이 부분의 대한 설명 좀 부탁드려도 될까요?
-
미해결[Lv.3] 실전 네트워크 통신 - SwiftUI Combine, Async/Await
@Published의 용도
안녕하세요이번 실전 네트워크 통신 강의를 들으며 ViewModel을 만들 때 1번 방법이 아닌 2번 방법으로 만들 수 있다는 사실을 알게되었습니다. 앞쪽 강의에서 기존 1번 방식에서는 변수 생성 시 @Published 를 붙여야했지만, 2번 방식처럼 @Observable을 사용하면 @Published를 붙이지 않아도 된다고 하셔서 결국 위의 두 코드는 같은 기능을 한다고 이해를 했습니다. 그런데 이번 강의에서 아래와 같이 @Published를 사용하여서, 이 부분이 이해가 잘 가지 않습니다 혼자 고민해본 결과로는, - count 변수: 단순히 값을 읽고 쓰는 용도- textFieldID: 퍼블리셔(특정 시간/조건에 따라 값을 방출하는..?)로 사용 위의 용도 차이이다. 그렇다면 기존 방식에서 @Published를 모두 붙여야했던 이유는 무엇인지..? 라는 질문이 또 생기는 것 같습니다. 답변 주시면 감사하겠습니다!!
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
modifiers 창이 안보여요.
xcode 26.0.1 사용 중인데요.inspectors 창은 열려 있는데요.modifiers 창이 없고 이미지와 같이 3개만 보여요.이럴 땐 어떻게 해야할까요?
-
미해결[Lv.2] SwiftUI 중급 - Core Data와 SwiftData로 앱 완성하기
Sorted, Filter, Map - UserViewModel 부분 오류 발생
강의 관련된 질문은 언제나 환영입니다 😄코드 관련 상세하게 작성해주시면 더 좋아요! (상세코드를 붙여넣기 해주세요)마크다운을 사용해서 편리하게 글을 작성하세요먼저 유사한 질문이 있었는지 먼저 검색 해보는 습관~인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요Protocol requires property 'objectWillChange' with type 'Self.ObjectWillChangePublisher' (Combine.ObservableObject.objectWillChange)Initializer 'init(wrappedValue:)' is not available due to missing import of defining module 'Combine'이렇게 두개의 오류가 뜨는데. 영상을 봐도 해당 코드와 다른게 없어서 질문드립니다. 혹시 어떤 부분이 문제일까요?
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
showAlert 변수 mvi 패턴에서의 사용법
안녕하세요 애구마님!앱 클라이언트 개발 시, 보통 showAlert 같은 UI 동작을 제어하는 변수는 화면(Screen)에서 직접 관리하는 경우가 많다고 들었어요!그런데 만약 진행 할 프로젝트에 MVI 패턴을 적용한다면, 이 showAlert 같은 UI 상태들은 별도의 상태(State) 클래스에서 관리하는 게 맞을까요?즉, MVI 패턴에서는 showAlert를 포함한 모든 UI 상태를 상태 클래스(State)로 중앙 집중 관리하고, 사용자 동작은 Intent로 받아서 상태를 변경하는 방식으로 관리하면 되는 건지 궁금합니다.이 부분에 대해 조언 해주시면 정말 감사드리겠습니다!
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
swift vs swiftUI
안녕하세요. Swift에 입문한 주진성입니다.혼자 AI를 통해 학습하던 중 Xcode와 Mac 키보드 단축키 적응에 어려움을 느껴 좋은 강의를 찾게 되었습니다. 정성껏 쉽게 설명해주시는 강의 덕분에 많은 도움을 받고 있습니다.다름이 아니라, 강의 제목('Swift vs. SwiftUI')에 대해 궁금한 점이 있어 문의드립니다. 보통 'JavaScript vs. React', 'Java vs. Spring Boot'라고 표현하지 않는 것처럼, 'Swift & SwiftUI'가 더 정확한 표현이 아닐까 하는 생각이 들었습니다.혹시 다른 특별한 이유가 있는지 여쭤보고 싶습니다.
-
미해결[Lv.1] iOS 17 앱 개발 기초 - SwiftUI로 시작하기
NavigationBarItems Deprecated
NavigationbarItem -> .toolbar로 바뀐 코드가 궁금합니다.
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
끝말잇기 로직 구현 중 ios 16 (iphone 16) 시뮬레이터 영어 입력 불가
안녕하세요!영상에서처럼 과거에는 한글입력이 어려웠는데, 이번에 새로 맥미니 m4를 구매한 후 최신 xcode를 사용해서 다시 공부하던 중입니다. 시뮬레이터가 오히려 지금 한글은 입력이 잘되는데(자간 모음 글자형태로 잘 만들어짐)영어가 입력이 안되네요,,,, 시스템상에서 한/영 은 잘 왔다갔다하고, 다른 웹이나 프로그램에선 한/영 잘 되는데, 시뮬레이터 안에서만 영어가 입력이 안되는건 혹시 어떤 문제인지 아실까요?
-
해결됨[Lv.2] SwiftUI 중급 - Core Data와 SwiftData로 앱 완성하기
ViewBuilder 강의 관련 질문입니다.
강의 관련된 질문은 언제나 환영입니다 😄코드 관련 상세하게 작성해주시면 더 좋아요! (상세코드를 붙여넣기 해주세요)마크다운을 사용해서 편리하게 글을 작성하세요먼저 유사한 질문이 있었는지 먼저 검색 해보는 습관~인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요LocalViewBuilder에서 numberPlate에 ViewBuilder 매크로를 사용해야되는 이유를 LocalViewBuilder에 선언된 ViewType을 사용하려면 이라고 설명해주셨는 데, 그것과는 상관없이 numberPlate 안에서 분기 처리된 항목들(view1, view2, view3)이 다 다른 타입(Text, VStack, Image)이라서 ViewBuilder 매크로를 사용해야되는 것이 아닐까요 ?? 설명 듣다가 헷갈려서 질문드립니다.
-
해결됨Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
Thread number가 다 1로 나옵니다
-
해결됨SwiftUI + TCA: 실전 프로젝트로 완성하는 차세대 iOS 아키텍처
해당 강의는 추가 오픈하는건가요?
우선 좋은 강의 감사드립니다. 현재 오픈되어있는 강의를 모두 수강하였는데마무리가 안된거 같아 추가로 강의가 오픈되는건지 궁금합니다.
-
미해결iOS15 SwiftUI Preview 테크닉, 인앱결제(In-App-Purchase), StoreKit 2 WWDC2021
강의 중 사용하는 AI 툴
혹시 사용하시는 AI 툴은 뭘까요?
-
해결됨Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
'loadAllPosts' 를 매번 사용해야 하나요?
안녕하세요 특정 코드에 대한 질문이 아니라 코드 설계에 대해 궁금한 점이 있습니다. 해당 프로젝트에서는 FeedView를 방문할 때 마다 'loadAllPosts'를 통해서 데이터를 가져오는데 이렇게 하면 비용적인 측면에서 문제가 되지 않을까요? 현업에서도 매번 이렇게 Read를 하는지 아니면 Cache를 사용하는지 궁금합니다.
-
미해결iOS SwiftUI AR 증강현실
Xcode ARKit 템플릿 생성 시, 템플릿이 달라졌네요
안녕하세요! Version 16.2 (16C5032a) 기준 새 프로젝트 생성 시, 나오는 템플릿이 아에 다른데요. 강의 속 코드 패러다임대로 공부를 해도 괜찮은건지 아니면 새로운 템플릿 기준으로 공부를 하는게 맞는지 궁금합니다.
-
미해결iOS SwiftUI AR 증강현실
Reality Composer Pro 사용법도 올려주실 수 있나요?
안녕하세요! 이제 Reality Composer가 더 지원하지 않는 것으로 보이는데, Pro로 처음 사용방법을 업데이트 해주시면 감사할 것 같습니다 😋
-
미해결iOS SwiftUI AR 증강현실
xcode 테마 어떤건지 알 수 있을까요~?
안녕하세요!가벼운 질문인데 ㅎㅎ 엑스코드 테마 어떤거 사용하시는 지 알 수 있을까요~?