파이어베이스 사용 도중 갖은 에러가 발생해서 적어놓는 글이다. pod install 에러=> M1칩과 코코아팟의 호환성 문제로sudo arch -x86_64 gem install ffiarch -x86_64 pod install Analyzing dependencies
Core Data는 앱에서 모델 계층 개체를 관리하는 데 사용하는 프레임워크이다. 프로젝트를 새로 시작한다면 코어데이터를 체크하고 생성하면 되지만 난.. 추가를 안하고 시작했기에..새로 파일을 하나 만들었다. ios > coredata > datamodel코어데이터를
컬렉션뷰는 리스트 형식인 테이블뷰보다 더 다양한 레이아웃을 구성하고 싶을 때 사용한다. 셀(cell)컬렉션뷰의 주요 콘텐츠를 표시합니다. 컬렉션뷰는 컬렉션뷰 데이터 소스 객체에서 표시할 셀에 대한 정보를 가져옵니다. 각 셀은 UICollectionViewCell 클래스
프로젝트 중 스크롤뷰를 사용하려하는데 다시 하려니까 오토레이아웃을 어떻게 잡아줘야하는지 정말 생각이 안난다..그래서 정리하는 스크롤뷰 레이아웃! 하하스크롤뷰란??자신이 포함하고있는 뷰들의 scrolling, zooming을 허용하는 뷰를 말한다. 손가락들의 움직임을 추
현재 진행중인 프로젝트에서 작성 화면을 모달로 띄워서 title을 변경하려하는데 잘 되지 않아서 작성하는 글이다. 모달 개념이 부족한듯.. 아직도..작성 화면 전 화면, 그니까 내 프로젝트 화면은 네비게이션 컨트롤러가 뷰컨들과 연결되어있는데 작성 화면 전 화면은 메인
자꾸 까먹어서 내가 참고하기 위해 작성하는 글이다.기존 Main.storyboard 파일 삭제 - move to trash로 삭제해야함info.plist 설정 들어가서 Storyboard Name 있는 행 삭제한다.SceneDelegate.swift 파일에서 scene
정렬 알고리즘의 꽃은 퀵 정렬이라고 한다!퀵 정렬은 분할 정복 알고리즘에 속한다. 문제를 나눌 수 없을 때까지 나누어서 풀고, 나누어서 푼 문제를 다시 합병하여 답을 얻는 알고리즘하향식 접근법으로, 일반적으로 재귀 함수로 구현퀵, 합병 모두 이것에 속한다. 재귀 함수를
① 두 인접한 데이터를 비교한다② 앞에 있는 데이터가 뒤에 있는 데이터보다 크면, 둘의 자리를 바꿔준다이렇게 한번으로 정렬 안되면 전체 정렬이 될 때까지 반복한다. 1-1.인접 데이터끼리 비교하며 swap하는 작업 (스캔 작업)은 총 (탐색하는 요소의 갯수 - 1) 만
하위뷰 콘텐츠의 상하좌우로 안쪽 여백을 주는 것 UIScrollView안에 있는 프로퍼티contentView가 safe area 또는 스크롤뷰 모서리(edges)에 삽입되는 사용자 지정 거리 라고 공식문서에 적혀있다.테이블뷰를 예시로 들면 tableView.conten
거스름돈이 N이고 항상 10의 배수일 조건이 있다. 그런데 사용가능한 동전들이 500, 100, 50, 10원으로 모두 10의 배수로 이루어져있다. 그렇다면 최소의 동전으로 N을 구성하려면 총 금액 N원을 가능한 가장 큰 동전으로 구성하면 된다. => 가장 큰 단위의
메모장 어플을 만들면서 날짜를 기록하기 위해 datePicker를 사용해보았다. UIdatePicker는 Date객체와 텍스트를 변환해주는 UIControl이다. 지금 만들고 있는 앱에서는 날짜를 datePicker로 선택해서 DiaryDate라는 Date타입 변수에
아래와 같이 계산기 프로젝트를 하다가 버튼의 title을 출력하려했는데 계속 nil값이 반환되는 에러가 발생했다. sender로 전달받은 값을 출력하면 title도 잘 나오는데 sender.title(for: )로 하면 왜 안됐는지..
named closure, unnamed closure 두 가지가 있다. 이름이 붙여진 클로저는 함수라고 부르지만 사실 함수도 클로저인 것이다. 보통은 이름 없는 클로저를 클로저라고 부르긴 함!클로저도 함수이기 때문에 1급 객체 함수의 특성을 가지고 있다. 함수의 특징
스토리보드를 사용할 때 생각없이 레이블을 연결하곤 했었는데 문득 두 가지의 의미가 궁금해져서 찾아봤다. 위의 두 가지의 역할은 스토리보드와의 연결고리를 담당하며, 변수나 함수를 정의할 때 앞에 @IBAction 또는 @IBOutlet 키워드를 통해 StoryBoard에
CPU의 프로세서, 컴퓨터에서 일을 하는 녀석이다. 싱글 코어는 한명이 컴퓨터에서 일을 하고 있는 것이다. => 그래서 동시에 두개의 일을 하지 못한다. 하지만 우리의 앱은 음악 실행, 크롬 실행 등 여러 작업들을 동시에 할 수 있다!한 명이 일을 하지만 이것을 매우매
enum 열거형을 배열 컬렉션과 같이 순회가능하게 해주는 프로토콜이다. 케이스 값들을 for문, 배열 컬렉션에서 쓰이던 메서드들로 순회할 수 있다.
앱에서 제공해주고 싶은 기능은 많고,각 기능은 여러 화면을 통해서 기능을 제공해줌화면 전환간에 사용 context 깨지지 않게 잘 전달하고 싶음결국, 사용자가 서비스 제공자의 의도를 잘 인지하게 도와주고, 앱 사용성을 쉽게 이해하게 도와주기 위해서HIG(Human In
기존 구현은 간단하고 유연보통 Controller 가 데이터 받아와서, UI 에게 변경을 알림점점 복잡한 구현이 생기면서, 기존방식 사용시 이슈가 생길때가 있음Controller, UI 가 들고 있는 데이터 사이에서 일치 하지 않음앱에서는 어느것이 더 맞는 데이터인지
wwdc2019에서 처음 소개된 프레임워크이다. 애플에서 RxSwift를 만든 것이다. Combine은 시간에 따라 값을 처리하기 위한 선언적(declarative) Swift API를 제공합니다. 이러한 값들은 많은 종류의 비동기 이벤트를 나타낼 수 있습니다. Com