UITable 뷰의 UITable View Delegate, UITable View DataSource 속성을 실습하기 위한 기초 프로젝트를 진행했다. 프로젝트는 ToDoList이며 task 리스트에서 추가, 삭제 , 수정 작업을 진행한다. 이전 포스팅에서 배운 UITable View Delegate, UITable View DataSource를 상속받아서 기능을 구현하였다.선택 된 뷰의 index를 관리하거나, 어떤 뷰가 선택되었는지를 Delegate를 통해서 지정할 수 있으며,동적으로 원하는 재사용 가능한 뷰를 그리거나 편집 모드에서의 동작 등을 구현하기 위해서 DataSource를 사용한다. ToDoList 스토리보드에서 기본 UI를 구성한다.Navigation Controller를 진입 view ..
UITable View 데이터들을 목록 형태로 보여 줄 수 있는 가장 기본적인 UI 컴포넌트 UIScroll View를 상속받아서 리스트 형태로 많은 내용을 보여줄 수 있다. - 하나의 열에 세로로 스크롤 되는 콘텐츠 행들을 표시한다. - 일반적으로 Navigation View Controller와 함께 사용한다. - 테이블의 다양한 계층의 탐색을 용이하도록 도와줍니다. - 여러 개의 Cell을 가지고 있고, 하나의 열과 여러 줄의 행을 지니고 있으며 수직으로만 스크롤 가능 - 섹션을 이용해 행을 그룹화하여 콘텐츠를 좀 더 쉽게 탐색할 수 있음 (연락처 처럼) - 섹션의 헤더와 푸터에 View를 구성하여 추가적인 정보를 표시할 수 있음 Delegate, DataSource Table View를 사용하기 ..
UIStackView 열 또는 행에 View 들의 묶음을 배치할 수 있는 간소화된 인터페이스이다. 오토 레이아웃을 이용하여 디바이스의 스크린 사이즈나 어떠한 변화에 맞춰서 동적인 UI 구성에 도움을 준다. 하지만 복잡한 UI를 구성할 때 일일이 오토 레이아웃 조건을 설정하면 제약조건이 많아져서 복잡하고 유지보수가 어려워진다. 뿐만 아니라 원하는 UI구성이 어려워질 수도 있다. UIStackView를 사용하면 쉽게 UI 구성이 가능하다. [ 각 뷰에 오토 레이아웃을 구성한 뷰 ] [ 스택 뷰를 사용한 경우 ] 제약 조건 없이 슬라이드와 같이 간단하게 UI 구성이 가능하다. [ 스택 뷰의 다양한 속성 ] 스토리보드에서 스택 뷰를 선택하고 속성 탭에서 다양한 스택 뷰의 속성을 설정 가능하다. 1. Axis S..
view Controller 전환과 Controller 사이에 데이터를 전달하는 방식을 적용하여 LEDBoard라는 기초 프로젝트를 실습했다. 프로젝트 내용은 설정 탭에서 텍스트와 텍스트 색상, 배경 색상을 지정하면 root View Conorller에 원하는 내용을 적용하는 방식이다. 이전에 포스팅한 controller 간의 화면 전환과 데이터 전달 방식을 사용한다. Main View Controller 새로운 프로젝트를 생성하고, 뷰 컨트롤러에 요소를 추가한다. navigation controller에 root view controller를 연결하고 Setting view controller와 연결한다. 색상을 선택하는 탭에 이미지를 적용해야 하는데, swift에서는 이미지 적용을 에셋 카탈로그에서 ..
다음 View Controller에 데이터를 전달하고, 돌아가는 화면에 데이터를 전달하는 방법을 배운다. Code로 전환한 뷰로 전달, Segue로 전달한 뷰로 전달하는 방법 중에 편한 방법을 사용하면 된다. Code로 전환한 뷰 컨트롤러에서 데이터 전달하기 앱 테스팅을 위해서 데이터를 전달할 뷰 컨트롤러에 라벨을 추가한다. 스토리보드에서 이동할 뷰 컨트롤러에 라벨을 추가하고, Assistant를 통해서 코드를 관리한다. class CodePushViewController: UIViewController { @IBOutlet weak var nameLabel: UILabel! var name : String? override func viewDidLoad() { super.viewDidLoad() if ..
앱이 복잡해질 수록 컨트롤러를 잘 관리해야 한다. 알맞은 타이밍에 내가 원하는 코드를 작성하는 것이 중요하며, 이를 위해서 View Controller의 Life Cycle을 알아야 한다. UI View Controller는 뷰가 보여진 상태에 따라 시스템에 호출하는 라이프 사이클 메서드가 다르다. 각 시점에 어떤 메서드가 호출 되는지 알아야 한다. viewDidLoad() - 뷰 컨트롤러의 모든 뷰들이 메모리에 로드됐을 때 호출 - 메모리에 처음 로드될 때 한 번만 호출 - 보통 딱 한번 호출될 행위들을 이 메소드 안에 정의 - 뷰와 관련된 추가적인 초기화 작업, 네트워크 호출 viewWillAppear() - 뷰가 뷰 계층에 추가되고, 화면에 보이기 직전에 매 번 호출 - 다른 뷰로 이동했다가 돌아오..