본문 바로가기

전체 글

(182)
[iOS] Date Picker로 알람 맞춰보자!( Timer.ScheduledTimer ) 안녕하세요! 오늘은 저번 글에서 말한것처럼 PickerView를 이용하여 알람을 맞춰보도록 하겠습니다!! 알람을 맞추려면 현재 시간을 출력해야하므로 전에 했던 것보다 조금 더 복잡해요! 같이 해봅시다!!! :D 본격적으로 들어가기 전에, 타이머는 Timer.ScheduledTimer라는 클래스 메서드를 사용하여 생성할 수 있어요~ Timer.ScheduledTimer에 대해 알고 싶다면 Apple developer 을 참고해주세요! 시간 출력하려면!!? 먼저 시간을 출력하려면 Timer.ScheduledTimer 사용해야한다고 했는데 아래 코드들을 보면 매개 변수가 5개나 있네요.... 어떤 뜻을 가지고 있는지 알아야 제대로 사용할 수 있겠죠?! Timer.ScheduledTimer 매개 변수 살펴보기 ..
[iOS] PickerView로 원하는 이미지 출력해보자! (+ 원하는 구구단) 안녕하세요! 오늘은 Picker View를 사용해서 원하는 이미지를 출력해보는걸 해보겠습니다!! (지극히 개인적으로 새롭게 접했던? 중요하다고 생각했던? 부분만 글을 쓰려고하니 참고만해주세용) 일단, PickerView를 사용할때는 extension을 빼놓을 수 없다고 해요!!!! extension은 가볍게 이야기하면 확장하는 키워드 입니다 ㅎㅎ 익스텐션에 대해서 잘 모르거나 더 자세히 알고싶은 분은 Extension - 익스텐션 을 참고해주세요:D (오늘의 TMI) 요즘 내일 배움 카드로 학원 다니구 있어요 ㅎㅎㅎㅎㅎ 확실히 비대면으로 강의 듣는것보다 대면이 좀 더 집중도 잘되고 바로 질문 할 수 있어서 좋더라구요 ㅎㅎ헤헤 Picker View가 뭐에요?? 그냥 해석해보면 선택하는 보기? 이런느낌인데,..
[iOS] MVP패턴 안녕하세용 :o 오늘은 MVP 패턴에 대해서 공부해보도록 하겠습니다!!! MVC나 MVVM은 워낙 유명해서 알고 있었지만, MVP?! 저는 처음 들어보는.. 친구였어요,, 공부하다가 알게된 새로운 친구! 같이 알아봅시다 🤔 MVP란? Apple's MVC는 저번 글에 설명한 것처럼 UIView의 lifecycle에 의해 Controller가 강하게 연관되어있었죠? 그래서 Controller가 하는 일이 많아진다는(크기가 방대해짐) 단점이 있었습니다!!! iOS가 이 문제를 해결하기 위해 Controller대신 Presenter 개념을 도입하여, Model + View + Presenter로 구성된 MVP 패턴을 만들었습니다. Passive View는 life cycle과 아무 연관이 없고, 어떠한 레이아..
[Xcode] Xcode Project 파일 명 이름 변경하기! 안녕하세요! 오늘은 Xcode Project 파일 명을 바꾸는 법에대해 알아보겠습니다!! 과정이 생각보다 복잡하더라구요...(만들때부터 제대로 만드는게 젤 좋은 것 같아요...) 1. Xcode로 프로젝트를 연다. 2. 좌측 Project Navigator로! 맨 상단에 있는 파일을 클릭하고 엔터를 쳐줍니다. 그럼 아래와 같은 화면이 나오는데, 여기서 Rename을 눌러줍니다. 3. Product -> Scheme -> Manage Scheme 순으로 들어갑니다! 클릭하면 아래와 같은 화면이 나옵니다! 아직 파일명이 변경 전 이름으로 되어있네요?!!! 당장 바꿔 줍시당,, 프로젝트 이름 부분을 클릭하고 엔터를 쳐주세요 (두번 누르기 X !!) 그러면 아래와 같이 변경이 가능해집니다!! 이름을 바꿔주고 c..
[ERROR] Automatically assigning platform `iOS` with version `15.0` on target `FeedbackExample` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#p.. 안녕하세용,, 오늘도 코코아팟을 설정하다가 나온 오류를 데리고 왔습니다!! 위와 같은 오류가 떴는데요! 해석해보면 아래와 같습니다. [!] 플랫폼이 지정되지 않았기 때문에 대상 `FeedbackExample`에 버전 `15.0`이 있는 `iOS` 플랫폼을 자동으로 할당합니다. Podfile에서 이 대상에 대한 플랫폼을 지정하십시오. 'https://guides.cocoapods.org/syntax/podfile.html#platform'을 참조하세요. 위의 나온 링크를 들어가보면 아래와 같이 나옵니다. 해석을 해봅시다..! 정적 라이브러리를 빌드해야 하는 플랫폼을 지정합니다. CocoaPods는 지정되지 않은 경우 기본 배포 대상을 제공합니다. 현재 기본값은 4.3iOS, 10.6OS X, 9.0tvOS..
[iOS] Cocoapod vs Carthage vs SPM 안녕하세여~~ 오늘은 Cocoapod, Carthage, SPM을 비교해 보려고 합니다. 공부하다보니 저 세가지의 다른점이 무엇인지 궁금해서 가지고왔어뇽 Cocoapod, Carthage, SPM 은 모두 Package Manager입니다. 라이브러리들을 관리해주는 친구들이죠! (의존성 관리) 저는 Cocoapod이랑 SPM만 사용해 보았어요,, Carthage는 완전 초면이랍니다! 세가지나 비교해야하니, 이 글은 간단한 설명과 장단점에 대해서만 알아보겠습니다 😄 Cocoapod : 코코아팟 Ruby로 만들어졌으며 Pod라는 라이브러리를 검색할 수 있는 사이트를 제공함으로써 라이브러리를 보다 찾기 쉽게해주는 집중형 시스템을 제공합니다. 설치 및 간단한 라이브러리 추가법 1. CocoaPods 설치 sud..
[iOS] MVVM 패턴 안녕하세용 :o 오늘은 MVVM 패턴에대해 공부해보도록 하겠습니다!! 회사에서는 코드에 새로운 기능이 추가될 확률이 굉장히 높고, 유지보수 및 테스트가 용이해야하기 때문에 MVVM 패턴을 사용하고있다고해요! 이런저런 부분에서 iOS 공부할때 꼭 필요하니 같이 공부해봅시다!!!!! MVVM이란? MVVM은 Model - View - ViewModel - ViewController로 구성되어있는 소프트웨어 아키텍처 패턴입니다. 저번에 MVC 공부할때 지나치게 ViewController가 커져서 재사용성이 떨어지고 테스트도 하기 어려워진다고 했죠?! 이 문제를 해결하기 위해 MVVM에서는 ViewModel을 추가해서 ViewController의 일을 덜어주고 크기를 줄여준 패턴입니다. 때문에 각 구성요소들이 ..
[ERROR] CocoaPods 설치 오류 해결하기 (feat. Ruby version update) 안녕하세요! 오늘 스파르타코딩클럽 강의를 듣다가 CocoaPod을 설치하는데 자꾸 오류가 떠서.. 들고왔어요ㅠㅠ 에러를 쭉 보면 맨 위 Error에 ERROR: 코코아팟 설치 오류: ERROR: gem 네이티브 확장을 빌드하지 못했습니다. 이렇게 떴는데 무슨 말인지 모르겠어서 엥..? 했어요ㅠㅠ 밑에 쭉 보니 루비 개발을 위해 별도의 패키지를 설치해야 할 수도 있습니다. 라는 부분이 있길래 Ruby 버전을 업데이트 해보았습니다! Ruby 버전 업데이트 하는 법은 아래와 같아요. // 설치하기 brew install rbenv ruby-build // 확인하기 ruby -v ruby를 업데이트하고 다시 cocoapods을 설치했더니!! 성공했습니당 ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ