🌙 IOS 스터디/Xcode

    [Xcode] 데이터 저장방법

    [Xcode] 데이터 저장방법

    데이터가 적은 경우 NSCoding Property List 데이터가 많은 경우 Core Data(구현난이도 있음) Realm Serialization 등등등... Codable NSCoding 처럼 데이터가 적은 경우 구현하기에 적합하며, swift4이상부터 지원하기 시작. 현재는 거의 필수로 사용중. 아주 쉽게 데이터를 다룰 수 있게 해주는 프로토콜.

    [Xcode] Project editor - 프로젝트 편집기

    [Xcode] Project editor - 프로젝트 편집기

    프로젝트 편집기의 첫 번째 열에있는 프로젝트 제목 아래에는 Project와 Targets제목이 표시된다. Project는 생성하는 모든 프로젝트는 해당 특정 프로젝트의 모든 대상에 대한 기본 빌드 설정을 정의한다. Target은 빌드하는 앱이며, xcode가 프로젝트나 작업 공간에서 파일들 안에서 제품을 구축하는 데 필요한 정보를 포함한다. Gerneral : ID, 서명 및 배포 옵션과 같이 가장 일반적으로 수정된 대상 설정을 조정 Singing & Capabilities : 앱에 승인, 앱 서비스를 활성화. 앱에 서명하려면 Xcode 프로젝트의 각 대상을 동일한 팀에 할당해야 한다. 개인으로 등록하면 1인 팀으로 간주됨. 만약 당신이 Apple Developer Program의 회원이 아니라면, Xc..

    [xcode] Storyboard objects 정리

    [xcode] Storyboard objects 정리

    UILabel : 한 줄 이상의 정보 텍스트를 표시 UIButton : 사용자 상호 작용에 대한 응답으로 사용자 지정 코드를 실행하는 컨트롤 버튼 UISegmentedControl : 여러 세그먼트로 구성된 수평 컨트롤이며 각 세그먼트는 개별 버튼으로 작동 UITextField : 편집 가능한 텍스트 영역을 표시하는 개체 UISlider : 연속 된 값 범위에서 단일 값을 선택하기위한 컨트롤 UISwitch : on / off와 같은 바이너리 선택을 제공하는 컨트롤 스위치 UIActivityIndicatorView : 작업이 진행 중임을 보여주는보기 UIProgressView : 시간 경과에 따른 작업 진행 상황을 보여주는보기 UIPageControl : 가로로 일련의 점을 표시하는 컨트롤 . 각 점은 ..

    [xcode] Inpo.plist 파일 - 애플리케이션 정보

    [xcode] Inpo.plist 파일 - 애플리케이션 정보

    Info.plist developer.apple.com/documentation/bundleresources/information_property_list Apple Developer Documentation developer.apple.com Info.plist >> 속성에대한 정보들을 key - value 형태로 저장한 리스트 파일이다. 코드 형태로는 xml형식으로 볼 수 있다. key-value 쌍은 시스템이 연결된 번들을 해석하는 방법을 지정한다. key-value 쌍은 번들에 대한 것도 있지만, 다른 일부는 번들이 나타내는 앱, 프레임 워크 또는 기타 항목 을 구성한다. 일부 키는 필수이고, 다른 키는 필요하다면 상세화 한다. bundle: 덩어리, 패키지 번들ID라는 용어는 같은데 형태가 2가..

    [xcode] HeaderView있는 CollectionView 애플 뮤직 앱

    [xcode] HeaderView있는 CollectionView 애플 뮤직 앱

    개요 HeaderView있는 CollectionView로 구성한다. CollectionView의 cell에는 뮤직 앨범이 들어간다. HeaderView에는 CollectionView에 있는 cell 앨범 중 랜덤한 앨범의 정보가 보여진다. 앨범을 클릭시 해당 곡을 재생할 수 있는 화면을 띄운다. 재생 버튼을 누르면 곡이 재생이 된다. 일시정지 버튼을 누르면 곡이 멈춘다. 슬라이더를 이용하여 원하는 부분의 재생이 가능하다. 다크모드, 라이트모드 적용시 알맞게 보여준다. 실행 동영상

    [xcode] CollectionView로 Animation기능을 추가한 원피스 현상금 앱

    [xcode] CollectionView로 Animation기능을 추가한 원피스 현상금 앱

    개요 MVVM 디자인 패턴을 이용하여 원피스 현상금 랭킹앱을 디자인. 현상금이 높은 순서대로 보여주어야 한다. View구성은 CollectionView를 이용하였다. 애니메이션 기능을 추가하여 동적인 느낌을 추가하였다. 실행 동영상 MVVM 디자인 패턴 View = UI + ViewController Model = 데이터 ViewModel = Model은 ViewModel를 거쳐서 접근 가능하여야 한다. 알고리즘적인 부분 수행 MVVM에 관한 구현 방법은 TableView로 구성한 1차 원피스 현상금 앱과 동일하다. (밑 링크 참고) cau-meng2.tistory.com/101?category=833321 [Xcode] MVVM을 이용하여 TableView로 구성한 원피스 현상금 앱 개요 MVVM 디자..

    [Xcode] MVVM을 이용하여 TableView로 구성한 원피스 현상금 앱

    [Xcode] MVVM을 이용하여 TableView로 구성한 원피스 현상금 앱

    개요 MVVM 디자인 패턴을 이용하여 원피스 현상금 랭킹앱을 디자인. 현상금이 높은 순서대로 보여주어야 한다. View구성은 TableView를 이용하였다. 실행 동영상 MVVM 디자인 패턴 View = UI + ViewController Model = 데이터 ViewModel = Model은 ViewModel를 거쳐서 접근 가능하여야 한다. 알고리즘적인 부분 수행 StoryBoard : UI TableView : Cell View에서 TableView를 구성한 다음에 Table View Cell 까지 디자인한다. 기존 Cell : xcode에서 자체적으로 지원하는 cell의 기본 디자인. 간단한 체크 표시 등등 가능. Custom Cell : 직접 디자인하여 cell을 구성하는 방법. 주로 이 방법으로..

    [Xcode] MVC 모델로 만든 계산기 앱 (Standford 대학 IOS강의)

    [Xcode] MVC 모델로 만든 계산기 앱 (Standford 대학 IOS강의)

    개요 Model , View , Controller 그룹으로 철저히 나누어 계산기 앱을 만든다. Constant, Unary Calculate, Binary Calculate 연산이 가능하여야 한다. 사칙연산은 누적이 되어야 한다. 앱을 눕히더라도 꽉찬 계산기 형태로 나와야 한다. 계산은 실수 형태로 나타내진다. Demo 앱 화면이 1개의 간단한 앱이기에, MVC 한 단위만 사용하여 구현하였다! 설명 클로져를 사용하여 함수를 지저분하게 사용하지않고 인라인 함수처럼 사칙 연산을 구현한건데, 스위프트 엄청 똑똑한 언어로 잘 만든 것 같다 가장 기억에 남는 갓클로져... Model 그룹에 해당하는 CalculatorBrain.swift (직접 생성) : 계산기의 계산을 수행하는 클래스 부분 View 그룹에 해..

    [Xcode] 손전등 앱 (Flash App)

    [Xcode] 손전등 앱 (Flash App)

    개요 아이폰에 기본적으로 내장되어있는 손전등 앱이랑 같은 역할을 하는 기본적인 앱 구현 기능 손전등이미지에 있는 버튼을 누르면 UI 이미지도 바뀌며, 실제 아이폰의 Flash가 켜진다 바뀔 때마다 Sound 효과를 추가 하였다 기본 어플의 Icon 이미지 생성하였다 Demo 영상에서는 플레쉬가 터지는지 안터지는지 안보이지만 , 아이폰과 연결하여 테스트 해보았을 때, 문제 없이 잘 터짐. TIP Icon 이미지를 만들기 위해선 Asset Catalog Creator어플만 이용하면 편리하게 해결가능 아이폰에서 테스트 해보기 위해서는 개발자 아이디 등록을 해야한다 한번 켜진 버튼을 다시 끄고, 꺼진 버튼은 다시 키기 위해서 if, else문을 사용하는데 (삼항연산자를 사용하여 축약) UIImage를 이용하여 ..