iOS

· iOS
구현 설명 및 사전 작업안녕하세요 노움 입니다. 오늘은 Youtube API를 사용하기 위해서 iOS에서 지원하는 HTTP 통신을 진행해보려고 합니다.우선 HTTP란 HTTP(Hypertext Transfer Protocol)이라는 것의 약어로 웹기반에서 수행되는 서버 - 클라이언트 관계의 통신 프로토콜을 말하는데요.예를 들어서 설명을 드리자면 웹(서버) ↔ 앱(클라이언트) 간의 통신 규약이라고 볼수가 있습니다. Swift에서는 HTTP통신을 지원하는 라이브러리 URLSession API를 지원해주는데 URLSession에 대한 구현 방법에 대하여 간략하게 설명드리자면1: URL Request 객체 생성2: URL Session 객체 생성3: URL Session Task 객체 생성4: Task 실행5:..
· iOS
안녕하세요 노움 입니다.이번에는 Youtube API를 활용해서 제공 받는 data를 CollectionView에 연결하고 검색 기능을 사용해 리스트를 업데이트 하는 작업을 진행하려고 합니다.youtube api는 아래 사이트에 들어가면 상세히 명시되어 있기 때문에 기능 구현시 찾아보시면 도움이 될거 같습니다. https://developers.google.com/youtube/v3?hl=ko 계획 및 정리시작에 앞서 필요한 부분을 정리하자면 1: Google API 콘솔 접근, API 키 요청2: Google Developers Console 프로젝트 생성, 앱에 API 요청을 위한 인정 정보 필요3: 프로젝트 생성 후 Youtube Data API가 애플리케이션에서 등록된 서비스 중 하나인지 확인4:..
· iOS
이전 블로그에서는 가장 기본적인 CompositionalLayout을 설정하고 호출하여 사용하는 방법을 정리했는데 이번에는 제가 만들려고 하는 화면에 맞는 사이즈를 item, group, section에 입력하여 layout을 설정하는 것에 대해서 작성하고자 합니다. 고민한 부분UICollectionViewCell의 적용과 콘텐츠 크기의 동적 크기 변경CompositionalLayout 을 사용하여 화면에 배치 및 설정하기 위해서는UICollectionViewCell에 들어가는 아이템과 하나 이상의 아이템이 포함되는 group, 전체 화면에 배치되게 될 Section의 layout을 세팅 해야 합니다. 그래서 저의 경우 제일 큰 부분인 section부터 배치를 잡고, group, item 순으로 layo..
· iOS
이제 실제로 CompositionalLayout을 적용하려고 하는데 그전에 아주 간단하게 CompositionalLayout이 무엇인가 왜, 언제 사용하는 것인가 설명하고자 합니다. CompositionalLayout이란 CollectionView의 여러 layout 방식 중 하나입니다.구성으로는 item, group, section이라는 구역으로 총 3가지 종류로 나눠져 있어 기본적으로 각각의 size(layout), property를 설정하여 사용합니다. // Compositional Layout 설정func createBasicListLayout() -> UICollectionViewLayout { let itemSize = NSCollectionLayoutSize(widthDimension..
· iOS
안녕하세요 이놈 저놈 그놈의 노움입니다. 최근에 개인 프로젝트로 진행중에 복잡한 홈 화면 개발에 고민했던 점, 어려운 부분, 새롭게 알게된 내용을 정리하는 목적으로 글을 작성하게 되었습니다. 따라서 이 글은 저 개인의 학습을 최우선 목적으로 함을 미리 알립니다 혹시나 CompositionalLayout을 배우려고 들어오셨다면 빨리 도망가시길 바랍니다. 우선 제가 고민했던 부분은 아래와 같은 다양한 화면 구성을 가지고 있는 앱을 어떻게 만들어야 하는지에 대해서 입니다.  위와 같은 화면을 개발하기 위해서는 위 아래 스크롤, 좌우 스크롤이 가능한 스크롤 뷰와 각각의 그룹에 들어가는 이미지, 택스트, 버튼을 배치해야 됩니다. 그래서 CollectionView를 사용해야겠다 라는 생각을 하게 되었습니다.왜 Co..
· iOS
Concurrency 동시성오늘은 동시성 Concurrecny에 대해서 공부해보자기존의 비동기 작업에 대한 handling을 completionHandler라고 불리는 클로저로 해당 시점을 알려주는 방식으로 사용했습니다.그런데 클로저 방식의 단점 몇가지 있는데completion을 호출하기 전에 에러 발생시 종료됨클로저 방식이 중첩적으로 이루어져 콜백 지옥에 빠짐이런 문제를 해결하기 위해서 async & await를 도입하게 되었습니다이 방법을 사용하면 비동기 작업을 하더라도 Completion Handler 없이 호출되는 곳을 보장할 수 있습니다.asyncfunc fetchThumbnail(for index: Int) async throws -> UIImage {함수 이름 뒤에 async가 붙으면 이 함..
· iOS
CollectionView 뷰 구현안녕하세요! 그놈이에요이번 프로젝트에서는 CollectionView를 추가하게 되어서 글을 작성하게 되었어요.거짓말 같겠지만 지금 글을 작성하는것이 처음이 아니에요...열심히 만들었는데 저장을 안해서 저의 노력이 먼지가 되어버렸네요 ㅋㅋㅋㅋ하지만 괜찮아 다시 만들면 되니까!! 하하하하  이제 무조건 노션에 만들어서 완성하면 복붙해서 넣는식으로 하자…CollectionView 객체 생성밑에 나오겠지만 우선 SubView가 무엇이냐?SubView는 MainView라는 사각형 화면에 들어가게 되는 각각의 요소들을 말합니다.그래서 MainView에 CollectionView를 서브뷰로 넣을 겁니다그럼 어떻게 넣으면 될까요? 우선 CollectionVIew라는 객체를 만들거에요p..
· iOS
[STEP3] 구현시 고민한 사항STEP3는 사용자 UI를 개발해야 합니다.STEP2에서 개발한 API 수신 모델을 사용해 CollectionView의 내부 뷰에 BoxOffice API를 사용해 수신되는 데이터를 연결해야 합니다.이전 프로젝트에서 진행한 UI 작업은 모두 StoryBoard를 사용하여 개발했기 때문에 코드 기반 화면 작업에 여러 에러? 막히는 부분들이 많았고 이번 글에서는 그 문제가 무엇이고 어떻게 해결했는지를 작성하고자 합니다.StoryBoard → CodeBase 이미 스토리 보드를 생성해서 프로젝트를 진행중이라면 이제 설명드리는 작업들을 진행해야 코드 기반으로 UI를 그릴수가 있습니다.아래 작업은 프로젝트에서 스토리 보드와 연결된 Main 파일을 삭제하고, UIKIT Main St..
쥐노움
'iOS' 카테고리의 글 목록