Home
Today Huny Learned
Cancel

CGRect, CGPoint, CGSize 프로퍼티 이해하기

UIKit을 학습하다보면 뷰에 관한 프로퍼티들 중 CGRect, CGPoint, CGSize 등 타입으로 선언된 속성들을 종종 보게 된다. 오늘은 이 CGRect, CGPoint, CGSize의 차이점과 각각 어떤 역할을 하는지 알아보자. 사실 이 3가지 타입은 서로 상관관계가 있어서 CGPoint -> CGSize -> CGRect 순으...

ViewController에 Static TableView Cell 사용하기

스토리보드에서 Static Table View를 UIViewController에 그냥 넣을 경우 static table views are only valid when embedded in uitableviewcontroller instances 라는 에러가 발생한다. 번역해보자면 Static Table View는 오로지 UITableViewCon...

Swift 반복문 for-in과 forEach의 차이

swift에서 흔히 사용하는 for-in문 과 forEach문 은 겉보기에는 둘 다 반복문 처럼 동작하지만 사실 forEach는 반복문이 아니다. 가장 큰 차이점은 반복문 제어 가능 여부인데, 우선 for-in문과 forEach문이 기본적으로 어떻게 사용하고 어떻게 동작하는지 살펴보자 for-in 반복문 Swift 공식문서 Control Flow...

여러 개의 View에 TapGestureRecognizer 적용하고 터치 이벤트 구분하기

기본적으로 터치 이벤트가 설정되어 있지 않는 View는 TapGestureRecognizer를 적용하여 터치 이벤트를 추가할 수 있다. 참고 - UILabel, UIImageView 터치 이벤트 추가하기 만약 여러 개의 View에 터치 이벤트를 설정하고자 한다면 View들을 배열에 담아 반복문 또는 forEach문으로 TapGestureRecogn...

TextField에 왼쪽 padding 넣는 방법

UIKit의 TextField는 기본적으로 내부 패딩이 없다. 그래서 아래와 같은 몹시 불편한 상황이 연출되기도 함.. TextField의 leftView라는 속성을 통해서 내부 패딩을 구현할 수 있음. 공식문서에 따르면 text field의 왼쪽에 표시되는 뷰 속성이라고 한다! let paddingView = UIView(frame: C...

UILabel, UIImageView 터치 이벤트 추가하기

UILabel, UIImageView 등 기본적으로 터치 액션이 제공되지 않는 View에 터치 이벤트를 추가하는 방법에 대해 알아보자. tapGestureRecognizer를 통해서 기본적으로 사용자 상호작용을 지원하지 않는 View(UIView, UILabel, UIImageView, UITextView 등)에 터치 이벤트를 추가할 수 있다. 우선...