210415 Thu

Sunny·2021년 4월 28일
0

Today I Learned

목록 보기
35/88

스크롤뷰 (UIScrollView)


UIScrollView is the superclass of several UIKit classes, including UITableView and UITextView.

테이블뷰는 자식클래스
스크롤뷰는 슈퍼클래스

자식클래스는 부모클래스의 모든 프로퍼티나 메서드를 이용할수 있음
부모클래스처럼 점점 더 상위로 갈수록 기능이나 이런게 더 많아지는게 아니라
부모클래스가 가지고 있는 기능들을 자식클래스에게 그리고 또 그 자손클래스에게 물려주는 식

부모 클래스 + 내가 하고 싶은거 추가 = 자식 클래스


Person이 부모 → 그 자식클래스가 Student → 또 그 자식클래스가 UniversityStudent

자식클래스로 갈수록 기능이 많아짐

결론: 테이블뷰는 스크롤뷰를 상속받기 때문에 스크롤뷰를 굳이 추가 구현해주지 않아도 됨

스크롤뷰 팁 (by Tak)

스크롤뷰를 올려서 오토레이아웃으로 슈퍼뷰랑 맞춰준 다음에 그위에 바로 내가 구현할거를 올리는게 아니라 뷰 하나를 더 올려놓고 그 뷰위에 내가 구현할것들(라벨이나 이미지뷰같은 오브젝트들)을 올려야 함.

그런걸 스토리보드에서 올려줄때 바로 올리면 안됨.

슈퍼뷰: 우리가 구현해주지않은 기본적으로 있는 뷰
(= 뷰컨을 만들면 딸려오는 뷰)

그 위에 스크롤뷰를 만들고
스크롤뷰를 슈퍼뷰에 딱맞게 오토레이아웃을 잡아주기
우리가 스크롤하고싶은부분은 화면 전체니깐

그런다음에 그위에 그냥 View를 올리고
스크롤뷰랑 width를 맞춰줌

width를 맞춰주는 이유는
우리는 좌우스크롤을 할게 아니라 상하스크롤을 할거니깐
좌우는 고정될 수 있도록!

그런다음에 그 View안에 우리가 만들어줄 label, imageView들을 넣어놓고 json파일 파싱한걸 연결시켜 주기.

참고 자료

문제점/고민한점 → 해결방안

Q. 스크롤뷰를 3개의 화면 뷰 컨트롤러마다 모두 적용해줘야 하는가?
A. (Tak의 경우) 뷰컨마다 적용하긴 했는데 첫 번째랑 세 번째만 했다고 함
Why? 두번째꺼는 테이블뷰임
테이블뷰에 옵션키 누르고 클릭해보면
테이블뷰 자체가 스크롤뷰를 상속받고있어서
테이블뷰를 선언해주면 따로 스크롤뷰는 구현하지 않아도 됨

그래서 탁은 테이블뷰를 안쓰는 1,3번째 뷰컨에만 스크롤뷰 구현해줬다고 함

과제 1. content layout, frame layout
개념 다시 파악하고 스크롤뷰 제대로 작동하게 하기

과제 2. 이쁘게(?) 포맷에 맞게 출력...
앞에 장소: 이런거...

profile
iOS Developer

0개의 댓글