View의 형성과정을 이해하기 위해서는 Window, RootView, UIApplicationMain(), application delegate에 대한 기본적인 이해가 필요합니다. 또한, iOS 13버전을 기준으로 약간의 변화가 있습니다. 이번 포스트에서는 사용자가
가끔 특정 case에 따라 rootView를 변경해주어야 할 경우가 있습니다. 이번 포스트에서는 rootView에 접근하는 방법에 대해서 알아보겠습니다.rootView에 접근을 시도하는 곳이 UIView를 상속한 class 라면 해당 view의 window 속성을 통해
view계층 구조의 중요성: drawing 순서, superView, sibling viewsuperview subview 관계의 특징관련 메서드
UIView를 상속받은 view class가 인스턴스화될 때, CALayer가 함께 인스턴스화 됩니다. 그 이유는 UIView class가 CALayerDelegate를 채택하고 있기 때문입니다. 따라서 모든 view는 하나의 layer를 갖습니다. 사실 UIView는
아래 method를 사용하면 view의 계층구조와 별개로 layer의 계층 구조를 설정할 수 있습니다. 단, 주의할 점은 View의 계층구조에 상충되어서는 안된다는 점입니다. method 이름으로 사용법을 충분히 알 수 있으므로 추가적은 설명은 하지 않겠습니다.addS
이번 포스트에서는 CALayer의 drawing에 대한 기본적인 개념과 더불어 CALayer의 다양한 method를 알아보겠습니다.\---응용편(3)에서 다룰 부분
iOS 13버전 부터 dark mode가 생기면서 system color라는 것이 생겼는데, system color만 가지고는 dark mode와 light mode 두 경우 모두 원하는 color를 설정할 수 없어서 불편한 경우가 있습니다. 예를 들어 light m
활성화 여부에 따라 시각적으로 달라지는 것은 없지만 drawing resource에 영향을 줍니다.아래 그림에서 빨간 네모와 파란 네모가 겹치는 부분을 drawing할 때 각 두 객체의 투명도를 계산하여 view에 표시하게 되는데 이 작업은 상당히 고비용의 작업이고 이
UIView는 기본적으로 touch 이벤트를 관리할 수 있게 되어있습니다. 이번 포스트에서는 UIView의 touch이벤트를 관리할 수 있는 method에는 무엇이 있고 어떤 식으로 활용할 수 있는지 알아보겠습니다.touchesBegan(touches:event:) :
스토리보드에서 ctrl + drag 방향에 따라 보여지는 constraint 종류가 달라짐. 좌측 하단으로 drag할시에 leading, bottom 보이고 우측 상단으로 drag하면 top, trailing 보임.캔버스메뉴 우측 2번째 메뉴 사용법selected Vi
view의 content를 기준으로 정렬하고 싶을 때 사용아래 그림과 같이 두 label을 bottom 기준으로 정렬하면 view의 하단이 일치하도록 정렬됨. (제약조건: horizontal spacing + bottom)두 label을 baseline을 기준으로 정렬