AutoLayout 기초 기초 기초 기초

1469 단어 XcodeiOSSwift

AutoLayout이란?



AutoLayou는 制約を用いたレイアウト方法입니다.

제약이란



위치와 크기를 결정하는 개념입니다.

이런 공부하지 않아도,
UIView 클래스의 인스턴스 프로퍼티의 frame로 위치나 사이즈를 결정할 수 있는 얀!!
라고 생각한 당신은 이 기사를 끝까지 읽는 것이 결정되었습니다.
(나도 그렇게 생각했습니다.)

이야기를 되돌립니다.

제약 조건은 동일한 계층 구조에 있는 뷰와 부모-자식 관계에 있는 뷰의 관계를 정의할 수 있습니다.
(덧붙여서 frame은 슈퍼 뷰의 좌표에서의 위치를 ​​정의 할 수 있습니다.)

같은 계층에 있는 뷰의 관계를 정의할 수 있다는 것은, 적은 코드로 화면 사이즈의 영향을 누르면서 레이아웃하는 것이 가능하게 됩니다.
(frame을 사용해도 화면 사이즈의 영향을 억제할 수 있습니다. 디바이스에 따라서 화면 사이즈를 취득해 if문으로 조건 분기해 frame를 매회 결정한다고 하면 ....... (기분이 멀어지는 이야기입니다)

AutoLayout 엔진



저는 view에 대한 제약 표현식을 제공합니다.
주어진 제약식의 연립 방정식을 풀어 레이아웃을 결정합니다. 이 작업을 수행하는 것이 AutoLayoutエンジン입니다.
(이름은 멋지다)

그렇다면 구체적으로 제약식이란 무엇입니까? 보자!

제약식



아래 그림에서 파란색 테두리로 둘러싸인 것이 ViewBlue이고 오렌지색 view가 ViewOrange라고 가정합시다.
viewOrange의 수퍼뷰는 ViewBlue입니다.
제약식은 4종류가 됩니다.
1.viewOrange.top=viewBlue.top
2.viewOrange.left=viewBlue.left
3.viewOrange.right=viewBlue.right
4.viewOrange.bottom=0.6 × viewBlue.bottom


제약식을 일반화하면y=ax+b 됩니다.
(구체적으로, 연립 방정식을 효율적으로 풀 수 있는 알고리즘은 어렵고 나에게는 이해할 수 없었다.)

(AutoLayou에서 모르는 것이 있으면 이 기본 부분으로 돌아오면 이해할 수 있을지도.)

좋은 웹페이지 즐겨찾기