-
[ios - Swift] Scrollview AutoLayout 사용하기ios 2020. 11. 16. 20:00
ScrollView는 사용할 때 AutoLayout이 적용되지 않습니다.
그렇기 때문에 AutoLayout 적용을 위해서 다음과 같은 작업을 진행하도록 하겠습니다.
1. 화면 구성
배경이 될 UIView와 Scroll View를 삽입합니다.
UIView는 View Frame, ScrollView는 MainScrollView라고 칭하겠습니다.
ViewFrame은 원하는 대로 Constraints를 설정한 후 MainScrollView는 ViewFrame과 가로, 세로를 동일한 크기로 맞춘 후 Constraints(0, 0, 0, 0)으로 설정하면 됩니다.
이때 ScrollView의 Size inspector에서 Content Layout Guides를 체크를 해제해야 합니다.
2. Controller 구현
화면 구성에서 만든 컨트롤로 아웃렛을 설정한 후 스크롤을 테스트할 이미지를 배열로 선언합니다.
init_ScrollView라는 함수를 생성해 AutoLayout을 맞춰 보도록 하겠습니다.
Scroll View 작동 방법은 위 이미지와 같고 해당 함수의 설정은 아래와 같습니다.
36, 37 : ScrollView에 넣을 Subview의 크기 변수
46 ~ 48 : Subview의 시작 좌표
57 : ScrollView의 내부 사이즈이며 스크롤 시 보이는 사이즈
마지막으로 MainScrollView의 Delegate를 연결하고 작성한 함수를 호출합니다.
이때 꼭 viewDidLayoutSubView에서 호출하셔야만 기종에 상관없이 autolayout이 적용된 화면을 띄울 수 있습니다.
'ios' 카테고리의 다른 글
[ios - Swift] Swift Timer 사용 (0) 2020.11.16 [ios - Swift] 데이트 포맷 형식 (0) 2020.11.16 [ios - Swift] URLSession DataTask 동기처리 (0) 2020.11.14 [ios - Swift] Codable을 사용한 Json 데이터 가져오기 (0) 2020.11.13 [ios - Swift] URLSession으로 Json 데이터 가져오기 (0) 2020.11.12