묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
1개의 뷰컨트롤러에 여러 개의 view를 사용할 수 있나요?
안녕하세요강의를 듣다가 코드를 짜는 부분에서 공통으로 사용하는 부분이 있어서이를 따로 View로 만들어서 이를 viewController에 적용시키려고 합니다. 이 때 1개의 ViewController에 여러 개의 View를 담을 수 있나요?가능하다면 ViewController에 넣을 때 위치는 frame으로 하면 되나요? 아니면 간략하게라도 1개의 ViewController에 여러 View를 넣을 수 있을지 가이드라도 알려주시면 정말 감사합니다.. 어찌보면 강의와 상관없는 얘기일 수도 있는데.. 부탁드립니다.
-
해결됨[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17
ExtractView, @Binding 강의에서 .previewLayout(.sizeThatFits) 함수 관련해서 질문드립니다.
안녕하세요 강사님. 현재 ExtractView, @Binding 강의들을 듣고 있는데전체레이아웃 사이즈를 조정해주는 .previewLayout(.sizeThatFits) 메서드가 프리뷰에서 적용이 안되는데 이것도 iOS 버전 문제일까요? 프리뷰 캔버스에서는 강의에서 나오는 메뉴가 따로 안보이고 해서 코드로만 입력을 했는데도 적용이 안되서 질문드립니다. 감사합니다.
-
미해결UIKit - iOS14 실무 가이드 <iOS앱 진짜 개발자 되기>
pageViewController 호출시점
강의에서 매개변수로 viewControllerBefore viewController 이나 viewControllerAfter viewController 를 가지고 있는 pageViewController함수를 이용해 현재 페이지의 idx 를 구할 수 있다고 들었는데, 언제 호출되는지 궁금해서 각각 함수에 아래의 디버깅 코드를 넣어서 테스트 해봤습니다print("before pageViewController 호출")print("after pageViewController 호출")결과는 오른쪽 페이지로 갈때는 after 이 출력되었고 왼쪽페이지로 갈때는 before 이 출력되었는데 매번 나오는건 아니고 나올때도 있고 안 나올때도 있더라고요..왜 이렇게 매번 호출이 되었다가 안되었다가 하는 것일까요?페이지에 따른 규칙성일까 싶어 확인해봤으나 랜덤으로 나왔다가 안 나왔다가 하는 것 같았습니다. extension OnBoardingPageViewController: UIPageViewControllerDataSource { func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? { print("before pageViewController 호출") guard let currentIdx = pages.firstIndex(of: viewController) else { return nil } self.currentIdx = currentIdx //마지막 페이지일 경우 마지막 페이지로 if (currentIdx == 0 ) { return pages.last } return pages[currentIdx-1] } func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? { print("after pageViewController 호출") guard let currentIdx = pages.firstIndex(of: viewController) else { return nil } self.currentIdx = currentIdx if currentIdx == pages.count - 1 { return pages.first } return pages[currentIdx + 1] } }
-
해결됨[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17
iOS 15 버전이후 프리뷰 문제 관련해서 질문드립니다.
안녕하세요 Jacob 강사님.좋은 강의 잘 듣고 있습니다. 현재 다른 질문에 답변해주신 글을 확인해서 iOS 15버전 업데이트 후 프리뷰 문제로 뷰를 추가하면 새로운 프리뷰가 생기지 않아서 새로운 클래스나 구조체를 만들고 프리뷰를 추가해줘야 한다고 들었는데요.그게 특정 강의에서만 해당되는게 아닌 지금 현재 강의들에서 프리뷰가 안생기는 문제들은 알려주신 방법대로 모두 진행하면 될까요? 현재 'LazyGrid' 강의 듣고 있고 Frame 강의때 프리뷰 문제를 발견해서 그 이후에 쭉 프리뷰가 나눠지는 부분은 알려주신 대로 처리했었습니다. 올바르게 하고 있는게 맞는지 궁금해서 질문드립니다. 감사합니다.
-
미해결Apple 출신 개발자의 SwiftUI Basic Part 1 기초튼튼
var body: some View는 기본적으로 Vstack인가요?
@state강의에서 Zstack밑에 Hstack을 넣는데 Vstack안에서 쌓는게아니라 단순히 Zstack과 Hstack이 위아래로 배치되는데아무것도 명시하지않을때는 기본적으로 Vstack처럼 동작하는지 궁금합니다
-
미해결최신 SwiftUI와 UIKit과 함께하는 올인원 iOS 앱 개발 강의
ListViewController이 뜨지 않습니다.
안녕하세요? 강의를 잘 듣고 있습니다. 파이어베이스 - 회원가입/로그인 3 ~ 데이타베이스 부분 을 진행하고있는데요 리스트 뷰 firestore 버튼을 누르면 ListViewController 이 나오지 않고 이런 오류가 뜹니다. (앱은 안꺼집니다) 이유가 뭘까요? 혹시 제가 놓친 부분이 있을까요?
-
미해결UIKit - iOS14 실무 가이드 <iOS앱 진짜 개발자 되기>
20:01 쯤에서
execute: ()-> void 에서 바로 {code}로 형태를 바꾸시던데 어떻게 하는건가요? 단축키가 따로 있나요?
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
Api관련 질문있습니다!
안녕하세요. 강의를 수강하면서 프로젝트로 앱을 하나 만들어 보려고 합니다.우선 Node를 사용하여 서버를 만들었습니다.카카오 맵이나 구글 api를 요청받아 지도상에 출발지와 목적지 위치를 입력받고 이동경로를 표시하고자 하는데,문제는 api요청을 서버에서 하고 앱으로 전달할 지 아니면 앱에서 직접 api를 요청하여 바로 사용할 지 고민입니다. 후자의 경우 앱이 무거워질 수도 있는 게 아니냐는 백엔드 측의 의견이 나왔습니다.항상 강의 도움을 많이 받고 있습니다. 감사합니다.
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
RESTful API 질문있습니다!
안녕하세요 앨런님! 강의 잘 듣고 있습니다! 앨런님 강의 덕분에 IOS개발자로 면접을 보게되었는데 자격요건에 "Restful api 기반 앱 개발 경험이 있으신 분" 이라는 문장이 있는데 현재 제가 배운게 앨런님이 알려주신 섹션 14에 urlsession쪽에 내용만 알고 있습니다! 제가 다음주 수요일 면접에서 restful api에 대한 질문을 받으면 어떻게 대답을 해야지 올바른 답변이 될 수 있을까요? 어디서 부터 손을 대야할지 잘 모르겠어서 이렇게 질문 드리게 되었습니다 읽어주셔서 감사합니다 :) 일단 restful api에 대해서 구글링하면서 공부는 하고 있는데 , 딱히 뭐라고 답변을 드려야할지... 생각이 안나서.. 질문을 작성했씁니다 ㅠ 현재 제가 사용자 프로필을 위해 이미지를 urlsession을 통해 가져오고 있는데 이 코드들을 이용해서 답변을 할 수 있을지도 궁금합니다! var imageCache = [String: UIImage]() extension UIImageView { func loadImage(with urlString: String) { // 이미지가 캐쉬데이터로 존재하는지 확인하고 싶음, cache 키값을 넣어서 이제 벨류로 나오게 하는거임 if let cacheImage = imageCache[urlString] { self.image = cacheImage return } // 저는 // 이미지 위치 guard let url = URL(string: urlString) else { return } // url콘텐츠를 가져오기 , HTTP의 각종 메서드를 이용해 서버로부터 응답 데이터를 받아서 Data 객체를 가져오는 작업을 수행한다 URLSession.shared.dataTask(with: url) { data, response, error in //에러가 뜬 경우 if let error = error { print("이미지를 불러오지 못해서 에러", error.localizedDescription) } // 이미지 데이터를 만든경우 guard let imageData = data else { return } // 가져온 이미지를 통해 이미지 설정 let photoImage = UIImage(data: imageData) // 키 값이랑 이미지 캐시를 설정 , 키값은 이미지의 문자열 , 벨류는 당연히 이미지 사진이됨 imageCache[url.absoluteString] = photoImage // 이미지 설정 DispatchQueue.main.async { self.image = photoImage } }.resume() //일시중단된 작업을 재개해서 중단되면 다시 이미지가 로드될 수 있도록 }}
-
미해결성공적인 진짜 iOS Design Guide - [Autolayout With Code]
안녕하세요! 강의 자료 관련 문의 드립니다.
스택뷰 강의를 보고 있는데, 정렬과 배열 옵션에 대한 이미지들이강의에서 다운로드 받은 자료에서는 찾지 못했습니다.Autolayout_StackView_2023 프로젝트도 마찬가지였어요.혹시, 강의에서 보여주는 자료를 받을 수 있는 방법이 있을까요~?
-
해결됨[Lv.2] 레벨업 - SwiftUI intermediate with Core Data
Combine 관련 질문드립니다.
안녕하세요. 강사님.현재 초급, 중급 강의 결제 후 아직 이전에 하던 공부가 마무리가 덜 되어서 강의를 시작하지는 않았는데요.이제 곧 마무리하고 SwiftUI 초급부터 들어가려고 하는데 Combine도 같이 배워야 좋다고 익히 들어서 Combine에 대해서도 같이 공부를 하려고 하는데 Combine에 대한 강의 업데이트 계획이 있으신가요? 있으시다면 언제쯤 업데이트 될 지도 궁금합니다!
-
미해결iOS Concurrency(동시성) 프로그래밍, 동기 비동기 처리 그리고 GCD/Operation - 디스패치큐와 오퍼레이션큐의 이해
serial 큐 질문드립니다.
안녕하세요. 기본 구조는 A 스레드에서 SQ라는 serial queue에 async하게 task를 합니다.전달한 task의 마지막 부분에 @escaping 하는 completionHandler()를 호출하는 구조입니다. 만약 A 스레드에서 SQ에 task1, task2 두개를 보내면 completionHandler가 호출되는 순서는 보장받을 수 없는거죠? task1 { serialqueue.async { ...... completionHandler() } } task2 { serialqueue.async { ...... completionHandler() } }
-
해결됨[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17
VStack으로 프리뷰 생성
안녕하세요 강사님 !Frame 강의중에 강의처럼 VStack을 추가하여도 새로운 프리뷰가 생기지 않고 그냥 밑에 글이 추가가 됩니다.제가 무언가를 놓친걸까요..?? ㅜㅜ xcode 버전은 15.0.1입니다 !
-
해결됨[Lv.2] 레벨업 - SwiftUI intermediate with Core Data
if let else 질문있습니다.
1.if let text = displayText {Text(displayText!) } else {ProgressView()}2.if displayText != nil {Text(displayText!)} else{ProgressView()} 1번과 2번 두 코드의 차이를 모르겠습니다.if let else를 쓰게되면 장점이 무엇인가요?
-
해결됨[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17
MVVM 폴더 안에서 Preview가 작동하지 않습니다.
Basic 폴더 바로 밑에 UserModelBasicView파일이 존재하면 Preview가 잘 나옵니다. 그러나 MVVM폴더 안에 View폴더 안에 UserModelBasicView파일이 존재하면 Preview가 빨간 박스처럼 문제가 나타납니다.
-
미해결성공적인 진짜 iOS 개발자 되기 [기초부터 실무까지]
TODO List Coredata 질문입니다.
강의중 궁금한것이 있어서 질문 남깁니다.TodoList 엔티티 정의를 했는데. ToDoList 의 클래스를 찾을수 없다고 나옵니다. 어떻게 해야할지 모르겠습니다. 알려주시면 감사하겠습니다.
-
미해결iOS 개발 찍먹하기 - SwiftUI
binding
@Binding 프로퍼티 래퍼 기초 강의에서 배경바꾸기 버튼을 재사용하여야하니BindingSample 뷰에서 밖으로 빼서ChangeColorButton 뷰로 새로운 뷰로 만들어서 사용하셨는데, 이게 실제 현업에서 이렇게 사용하는건가요 ? BindingSampleView 안에 다 넣은건 가독성이 안좋아서..?
-
미해결iOS 개발 찍먹하기 - SwiftUI
피그마 튜툐리얼
자료 혹시 티스토리에 따로 올려놔도되나요 >? 출처 남기구요 !
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
어플 개발관련 질문있습니다.
안녕하세요. ios 시스템에서 가계부어플을 만들어보고 싶어서 수강중입니다. 데이터를 받아서 백엔드에서 처리하고 관리하여 화면에 보여주는 것을 수강하고 싶은데 어떤 강의를 수강해야할지 감이 안와서 이렇게 질문을 남깁니다.그럼 새해 복 많이 받으세요 ^^
-
해결됨iOS Concurrency(동시성) 프로그래밍, 동기 비동기 처리 그리고 GCD/Operation - 디스패치큐와 오퍼레이션큐의 이해
[7-3.DispatchBarrier] 예제 코드 질문
아래 예제 코드에서 "threadSafeNameGroup.notify" 가 정상적으로 동작하려면, 그룹의 enter와 leave 를 사용해주어야 하는 것이 아닌가? 라는 생각이 들었습니다.왜냐하면 "barrierThreadSafePerson.changeName" 메소드가 async로 작업을 보내기 때문입니다. 그럼에도 정상적으로 동작하는 이유는 barrier 플래그를 설정했기 때문에, 현재 쓰레드를 블락처리 했기 때문에 정상적으로 동작했는 것이 아닌가하는 추측을 하고 있습니다. 왜 enter 와 leave가 사용이 되지 않았는지 궁금합니다.