목록분류 전체보기 (210)
쥐수의 공부노트
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cu29Cy/btsaRMQ9KVW/7TIfPxzEYORxkq7qmZPwCk/img.png)
정답 : 1) components를 이용 2) split을 이용 Swift는 입출력을 readLine()으로 받고, 형식은 Optional String으로 받는다. 따라서 !를 이용하여 옵셔널을 해제한다. Swift는 문자열 구분을 split과 components를 이용하여 구분이 가능하다. split과 components의 차이점 - split은 Foundation을 import하지 않아도 사용이 가능하지만, components는 Foundation을 import해야만 사용 가능 - split은 결과물의 형태를 Array으로 반환하고, components는 Array으로 반환 - split은 문자열을 입력값으로 받을 경우 오류 발생, components는 입력값으로 문자열을 받아도 쪼개기 가능 spli..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/QuoUa/btrQ2SJ2yPq/y1e5oxziHocOkLGTpQ7qCK/img.png)
1. 오토레이아웃이란? - 아이폰이 다양한 사이즈와 화면 비율로 출시 되면서, 사이즈에 구애받지 않고 시각적으로 동일한 화면을 구현해야하는데 이를 위한 가장 편리하고 권장되는 방법이 바로 오토레이아웃이다. 오토레이아웃은 뷰의 제약 사항을 바탕으로 뷰 체계 내의 모든 뷰의 크기와 위치를 동적으로 계산한다. 오토레이아웃은 애플리케이션을 사용할 때 발생하는 외부 변경과 내부 변경에 동적으로 반응하는 사용자 인터페이스를 가능하게 한다. 오토레이아웃이 요구되는 외부 변경과 내부 변경에 대해 자세히 알아보자. 1-1. 외부 변경(External Changes) 외부 변경은 슈퍼뷰의 크기나 모양이 변경될 때 발생한다. 각각의 변화와 함께, 사용 가능한 공간을 가장 잘 사용할 수 있도록 뷰 체계의 레이아웃을 업데이트해..
1. UIKit 프레임워크 UIKit은 iOS 애플리케이션의 사용자 인터페이스를 구현하고 이벤트를 관리하는 프레임워크이다. UIKit 프레임워크는 제스처 처리, 애니메이션, 그림 그리기, 이미지 처리, 텍스트 처리 등 사용자 이벤트 처리를 위한 클래스를 포함한다. 또한 테이블뷰, 슬라이더, 버튼, 텍스트 필드, 얼럿 창 등 애플리케이션의 화면을 구성하는 요소를 포함한다. UIKit 클래스 중 UIResponder에서 파생된 클래스나 사용자 인터페이스에 관련된 클래스는 애플리케이션의 메인 스레드(혹은 메인 디스패치 큐)에서만 사용해야 한다. UIKit은 iOS와 tvOS 플랫폼에서 사용한다. 2. UIKit 기능별 요소 사용자 인터페이스 View and Control : 화면에 콘텐츠 표시 View Con..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bMYRNR/btrN4jFsHLk/9JwFk3f6UQOku9yC1KRar1/img.png)
1. 노래 데이터를 받아 AVAudioPlayer 지정 후 노래 길이 측정 - guard let을 이용하여 soundAsset에 Assets 파일에 sound라는 이름의 파일을 넣는다. 만일 sound라는 파일이 없으면 "음원을 찾을 수 없습니다."라는 문구 출력 후 함수를 종료한다. - sound라는 데이터가 있어서 soundAsset 변수에 저장이 되면, do 실행한다. AVAudioPlayer 클래스에 에셋 데이터를 넘겨서 해당 mp3 파일을 가진 객체를 생성 후 노래의 끝을 알기 위해 delegate를 채택한다. 만일 error가 발생하면 catch 내부의 문구 출력한다. - slider의 min값은 0 , max값은 노래의 길이 ( 노래 재생 시간), 값은 노래의 현재 길이로 설정한다. 2. T..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kJhbz/btrN3CK02uZ/P7TMTKAD9Gt7n5P5kkXx11/img.png)
1. AVFoundation AVFoundation은 다양한 Apple 플랫폼에서 사운드 및 영상 미디어의 처리, 제어, 가져오기 및 내보내기 등 광범위한 기능을 제공하는 프레임워크이다. 1-1. AVFoundation 주요기능 미디어 재생 및 편집(QuickTime 동영상 및 MPEG-4 파일 재생/생성/편집, HLS 스트림 재생: 재생가능 파일 목록 링크) 디바이스 카메라와 마이크를 이용한 영상 녹화 및 사운드 녹음 시스템 사운드 제어 문자의 음성화 2. AVAudioPlayer Class 2-1. AVAudioPlayer 주요기능 파일 또는 메모리에 있는 사운드 재생(네트워크에 있는 사운드 파일은 재생 불가) 파일 재생 시간 길이의 제한없이 사운드 재생 여러 개 사운드 파일 동시 재생 사운드의 재생..
1. UIButton UIButton 클래스는 사용자의 상호 작용(터치/탭 등의 이벤트)에 반응해 미리 지정된 코드를 실행하는 컨트롤 요소이다. 1-1. 버튼 생성 3단계 버튼을 생성하고 버튼의 유형을 선택하세요. 버튼을 나타내기 위한 문자(타이틀)를 입력하거나, 이미지를 설정한 뒤 크기를 조정하세요. 버튼에 특정 이벤트가 발생할 때 작동할 하나 이상의 메서드를 연결하세요. 1-2. 버튼과 메서드 연결하는 방법 addTarget(_:action:for:) 메서드 사용 인터페이스 빌더에서 연결 (@IBAction) 2. UILabel UILabel은 한 줄 또는 여러 줄의 텍스트를 보여주는 뷰로, UIButton 등의 컨트롤의 목적을 설명하기 위해 사용하는 경우가 많다. 2-1. 레이블 생성 3단계 레이블..