Storyboard, AutoLayout, UILabel, UIButton (명언 생성)
QuoteGenerator
명언 생성 앱
배울기술
- Storyboard
- AutoLayout
- UILabel
- UIButton
알아야 할 기본 개념
- UIKit
- UIViewController
- AutoLayout
- IBOutlet & IBAction
UIKit
Cocoa touch Framework → IOS Application framework (UIKit(사용자 인이벤트 처리등 UI관련), Foundation(자료구조, 네트워크 등등..), CoreDate… etc )
- 사용자 이벤트 처리
- 뷰 관련
- MVC 디자인 패턴을 따라 개발하는데 현실 UIKit 에서는 View와 Controller 가 깊게 연결되어 있어서 분리하기 어렵다
ViewController
UIView → 화면의 직사각형 영역
- 앱의 근간을 이루는 객체로 모든 앱은 최소한 하나 이사의 뷰 컨트롤러를 가지고 있다.
- 데이터 변화에 따라 view 업데이트, 상호작용, 리사이징, 다른 뷰 컨트롤러 들과 앱을 구성
AutoLayout
제약 조건을 이용해서 뷰의 위치를 지정하는 것 → 다양한 해상도 뷰의 맞게 UI 개발을 하기 위함
IBOulet & IBAction
storyboard 에 생성한 UIObject에 접근하여 컨트롤하기 위해서 변수에 바인딩 한것을 Outliet 변수라고 한다.
- storage 에서 strong, week 은 메모리 회수 정책이다. strong 은 일단 참조가 되어 있다면 메모리를 헤제 하지 않지만, week 은 참조 되어 있더라도 해제 될 수 있다. strong은 메모리 누수 발생 여지가 있다.
Action 함수는 동작을 정의하는 함수로 UI와 동작을 연결하여 UIVewController 에서 사용할 수 있도록 해준다.
Argument , Action message 를 이벤트 핸들러인 sender를 설정한다.
Content Hugging, Compression Resistance
- Content Hugging : 크기가 늘어나는데 저항하는 성질로서 높을수록 늘어나지 읂는다.
- Compression Resistace : 크기가 줄어드는데 저항하는 성질로서 크기가 높을수록 줄어들지 않는다.