묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
테이블 뷰 관련 질문있습니다!
안녕하세요. 앨런님.테이블 뷰를 사용하던 중 고민이있어 질문드립니다.현재 테이블 뷰의 높이를 정적으로 선언하는 방식이 아닌,테이블 뷰의 셀의 수와 높이를 계산하여 동적으로 내부 컨텐츠 사이즈에 따른 테이블 뷰의 높이를 설정하고 싶습니다.우선 저의 코드에서는 뷰의 계층 구조는 최상위부터스크롤뷰 -> 스택뷰 -> 테이블 뷰로 스크롤이 가능하게 구성을 했습니다.스택뷰의 높이를 내부 컨텐츠 크기에 자동으로 맞추고, 스택뷰의 바텀 제약에 맞춰 스크롤 뷰의 사이즈가 정해지는 방식입니다.더 좋은 방식이 있다면 조언 부탁드립니다. 감사합니다추가.테이블 뷰 셀의 수에 맞춰서 테이블 뷰의 높이를 지정하는 것 까지 해결했습니다.하지만 테이블 뷰 셀의 크기를 UITableView.automaticDimension로 했을 경우 셀의 크기가 잘리는 현상이 발생합니다.
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
섹션4-4 'NavigationStack' 오류가 납니다
'NavigationStack' is only available in iOS 16.0 or newer라고 뜹니다
-
미해결[Lv.2] 레벨업 - SwiftUI intermediate with Core Data, SwiftData
5월 업데이트 예정이었던 , iOS17 컨텐츠 SwifData 업데이트 언제 되나요 ?
SwiftData - iOS 17 (24년 5월 중 업데이트 예정)
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
활용앱 64강에서 초기 설정에 관한 질문입니다.
안녕하세요 앨런님제가 이전강의를 볼때부터 질문드리고 싶었는데요 앱 설정에서 아이패드는 체크를 안하고 싶은데요 새로 업데이트된 xcode에서 그것이 안되는데 어떻게 하면 좋나요?
-
미해결[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17
GalleryView 작성시, @State? @Bidnable? 의 차이점이 뭔지 궁금합니다.
IOS17로 업데이트 됨에 따라,@Observable 매크로를 활용하여 ViewModel을 활용하면,상태 변화를 감지하여 'View에서 자동적으로 업데이트 된다.'라고 알고 있습니다. @Observable 매크로를 사용해서 코드를 업데이트하던 중 궁금증이 생겨 질문을 남겨봅니다. ContentView, VideoView에서 AnimalViewModel의 인스턴스를 갖고 있을 때, var로 정의했을 때와 let으로 정의를 했을 때의 차이점이 있을까요?struct ContentView: View { // let이나 var이나 상관없는가? let vm: AnimalViewModel var body: some View { NavigationStack{ List{ // 1. Cover Image - hero Image CoverImageView(vm: vm)관련내용을 공부하다보니, 해당 링크에서https://www.donnywals.com/comparing-observable-to-observableobjects/"Defining an @Observable as a let property" 부분에HomeView에서 ViewModel에 @State 프로퍼티 래퍼를 사용한 후 let을 사용한다? 라는 내용을 본적이 있습니다. GalleryView에서 @State 프로퍼티 래퍼와 @Bindable 프로퍼티 래퍼를 사용했을 때의 차이점이 뭘까요 ㅠㅠ . 우선, @State로 했을 때는 변화의 감지를 HomeView에서도 GalleryView에서도 잘 작동하여, 슬라이더를 변화시켰을 때 Grid의 개수가 바뀝니다. 하지만 @Bindable 프로퍼티 래퍼를 사용했을 때에는 GalleryView에서만 슬라이더 변화를 감지 하고, HomeView에서는 변화를 감지하지 못하는 상황이 벌어집니다. @State var vm: AnimalViewModel@Bindable var vm: AnimalViewModelstruct GallaryView: View { @State var vm: AnimalViewModel var body: some View { NavigationStack{ ScrollView(.vertical, showsIndicators: false){ VStack(spacing: 30){ // 1. Image Image(vm.selectedAnimal) .resizable() .scaledToFill() .frame(width: 250, height: 250) .clipShape(Circle()) .overlay(Circle().stroke(Color.accentColor, lineWidth: 5)) // 2. Slider Slider(value: $vm.gridColumn, in: 2...4, step: 1) .padding(0) .onChange(of: vm.gridColumn) { withAnimation(Animation.easeInOut(duration: 1.0)){ vm.gridSwitch() } } // 3. Grid LazyVGrid(columns: vm.gridLayout, spacing: 20){ ForEach(vm.animals){ animal in Image(animal.image) .resizable() .scaledToFill() .frame(width: 80, height: 80) .clipShape(Circle()) .overlay(Circle().stroke(Color.white, lineWidth: 1)) .onTapGesture { withAnimation(Animation.spring()){ vm.selectedAnimal = animal.image } } } } } //:VSTACK .padding() } //:SCROLL .navigationTitle("갤러리") .navigationBarTitleDisplayMode(.inline) } //:NAVIGATION } } 추가로,@Observable 매크로를 이용한 예시가 잘 정리되어 있는 문서들이 있을까요?? 제가 잘 이해를 못한 건지, 이 부분이 너무 어렵네요. 감사합니다 😀
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
강의를 들으면서 앱을 만들어보고 있습니다
chat gpt API를 활용해서 간단한 앱을 만들어보려고 하는데 API를 어떻게 써야할지 감이 잘 오지 않습니다.혹시 괜찮으시다면 관련된 자료나 예시를 알 수 있을까요?
-
해결됨Part1: 진짜 왕초보 iOS 배우기(SwiftUI, SwiftData, 2024)
섹션2.끝말잇기앱 질문 - textfield 입력 변수 수정 방법
끝말잇기 앱을 만들다가 궁금증이 생겼습니다.textfield 로 입력 받은 문자열을 수정해서 사용하고 싶을 때(예: 사용자가 소문자로 입력한 영문자를 모두 대문자로 바꾸고 싶을 때)어떻게 할 수 있나요? 입력받은 값을 저장한 변수를 건드리면 에러가 뜹니다. 즉,nextWord = nextWord + "수정 더함"해도 에러가 나고다른 변수에 대입한 후 그 변수를 바꾸려 해도 (nextWord2 = nextWord + "수정") 에러가 납니다.
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
활용앱 59강에 관한 질문입니다
앨런님,안녕하세요 제가 코드로 설명해주신 것과 스토리보드로 한 것을 비교를 해보니까요 DetailViewController에서 구현된것에서 코드에서 말한 것과 다르게 numberofline=0이것이 없어서 그런지 여러줄로 표현이 안되서요 그래서 제가 좀더 스토리보드쪽에 보니까 numberofline이 있더라구요 그것에 0으로 해도 description에서 여러줄로 표현이 안되는데요 어떻게 하면 스토리보드로 구현한 Detailviewcontroller에서 description을 여러줄로 표현할수 있을까요?
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
활용-3 앱 /코드로 UI 짜기 영상에서 문의 드립니다.
영상 11분 20초 경 lazy var를 이용해 view.addSubview(emailTextFieldView)를 사용할 수 있다고 하셨는데 이 부분이 UIViewController의 view를 카리키는것이 아닌 클로저 내부에서 이미 선언한 let view = UIView()의 변수 아닌가요? 해당 코드가 왜 정상적으로 동작하는지 영상이 잘못된거 같은데요. 제가 잘못 이해하고 있다면 다시 설명 부탁드립니다.
-
미해결Apple 출신 개발자의 SwiftUI Basic Part 1 기초튼튼
파트2 개강 예정시기
안녕하세요, 혹시 파트2 개강 예정시기를 대략적으로 알 수 있을까요?
-
미해결
Closure 실전 세번째 설명 질문입니다.
강의을 수강하면서 아래의 함수를 사용하려고 하는데 if name.contains 구문에서아래와 같은 오류가 발생됩니다.let names = ["apple", "air", "brown", "red", "orange", "blue", "candy"] func someFind(find: String) -> [String] { var newNames = [String]() for name in names { if name.contains(find) { newNames.append(name) } } return newNames } Cannot convert value of type 'String' to expected argument type 'String.Element' (aka 'Character')강의에서는 잘 되는데, 제가 선언해서 저 함수를 쓰려고할때 발생되는 에러 메세지인데..String에서는 Charater Type밖에 찾을 수 없다고 합니다. 왜 강사님 코드는 되고 저는 안되는것인가요..?문자열 배열에서 검색한번 해보려고 하는데 오류가 발생되는데... 왜 이런 오류가 발생되는것인가요. ㅠㅠ
-
미해결성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
Main.sync 관련 질문입니다.
학습하면서 어려움이 있으면 DispatchQueue.global().async { DispatchQueue.main.sync { Thread.sleep(forTimeInterval: 1) print("finish1") } }위 코드의 굵은 코드들이 실행될때, 어떤 thread들이 실행되고 있는지 설명 부탁드리고 싶습니다. 이렇게 thread가 진행된다고 이해하면 맞나요?
-
미해결성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
섹션 8. 앱 만들기 - 맵 랜드마크 에 누락된 부분이 있는 것 같습니다.
2번째 영상과 3번째 영상 사이에 SearchResultTableViewController 작성 부분이 누락된 것 같습니다. 확인 부탁드립니다.
-
미해결성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
[앱 만들기 - ToDo List] 챕터 TableView 만들기에서
강의에서는 ViewController의 createrTodo() 메소드에 아무런 구현도 하지 않았는데 마지막에 `+` 버튼으로 상세 화면으로 이동하는 모습이 나옵니다. xib으로 뷰컨트롤러 생성 후 네비게이션 컨트롤러에 푸쉬하는 내용이 동영상에서 빠진거같네요.
-
해결됨성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
Task 질문
Task{}와 DispatchQueue.global().async{}와는다른건가요 ?? 아니면 동작방식은 똑같은데 이름만 다른건가요
-
미해결
[ios - Swift] 회사 내부용 앱을 만들었는데요.. 배포는..?
CRM ios app을 제작하였습니다. swift 언어를 사용하였고, storyboard 방식으로 제작하였습니다.플러그인으로 onesignal(푸시알림 서비스)를 붙였고, 현재 애플 공식 개발자 계정이 존재합니다.CRM을 App Store가 아닌, 직원들에게 직접 설치해주려고 합니다.어떤 방법을 사용해야 하는지 질문드립니다.*참고: 스타트업이라, Enterprise용 계정이 아닌 일반 개발자 계정입니다. 즉 직접 설치 방법 중Enterprise 방식은 사용할 수 없습니다.**참고2: Xcode로 build하여 아이폰에 설치해봤는데요, 개발자 모드 없이는 실행이 안됩니다. (다른 분들에게 항상 개발자 모드를 켜놓으라 할 수는 없어서...) 그래서 Xcode 빌드 외에 방법을 찾고 있습니다...
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
uiview가 안 보이는 경우
안녕하세요, uiview 관련 질문이 있는데요.library에서 uiview를 선택해서 autolayout에서 safe area 기준으로 위에서 100~200정도, 양쪽(좌우) 간격을 20, 20 이런식으로 맞춘 뒤, 가운데 정렬 (horizontally in container)을 한 뒤에 시뮬레이션을 돌려보면 uiview가 화면 상에 나타나지 않습니다. 아무 숫자나 입력을 시도해보았는데 우연찮게 잠깐 나타난 것을 보니 숨겨지거나 레이어 밑으로 들어갔다기보다는, 수치 설정이 잘못된 것 같은데요. 이 경우 어떻게 해결해야 할까요?숫자 빙고 앱 만들 시에도 똑같이 한다고 한 것 같은데 비슷한 오류가 발생했었다가 운좋게 해결됐었거든요. 제가 놓치고 있는 부분이 있는 건지 궁금합니다. label이나 button은 이런 오류가 없는데 uiview만 계속 이 문제가 반복됩니다.
-
해결됨UIKit - iOS14 실무 가이드 <iOS앱 진짜 개발자 되기>
Break Point 사용법
안녕하세요, 선생님! 수업중 질문입니다. Break Point를 통해 image URL를 확인하셨는데 혹시 단축키나 또는 진행 방식이 다른가요? 아무리 point를 넣어도 그 부분에서 멈추거나 url이 표시되지 않습니다.
-
미해결앨런 Swift문법 마스터 스쿨 (온라인 BootCamp - 2개월과정)
52강 13분
카피 온 라이트 최적화 개념은 배열 딕셔너리 셋트 등에 다 적용 되는 개념인가요? 아니면 어떤 부분은 적용되고 어떠한 부분은 적용이 안돼는 개념이 있나요 ? 배웠던 개념 내에서 그런 개념이 있는지 갑자기 헷갈려서요 ㅠㅠ
-
미해결성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
환율 계산기 앱 - 네트워크처리1 에러가 발생하는데요 ㅠ
[Assert] UINavigationBar decoded as unlocked for UINavigationController, or navigationBar delegate set up incorrectly. Inconsistent configuration may cause problems.위와 같은 에러가 발생하는데, 코드 문제는 아닌거 같고 Xcode문제 인 것 같습니다. 구글링을 해봐도 해결책을 찾지 못해 질문 남겨요 !! 아 그리고 혹시 SwiftUI 강의도 새로 찍으실 계획이신가요 ?