본문 바로가기
iOS/개인 출시 프로젝트

개인 출시 프로젝트 업데이트.!!(ImageView in ScrollView)

by iOS rOar 2022. 10. 19.

오늘은 출시 프로젝트 오늘 뭐 입지? 업데이트 기능 중 하나를 정리해보고자 한다.!!

 

우선 문제점이 무엇이냐.!!

 

해당 뷰와 같이 메인 이미지 비율에 따라 짤리는 현상이 발생한다.

 

해결할 수 있는 여러가지 방법이 있겠지만, 나는 뭔가 카카오톡 프로필 처럼 해당 이미지뷰를 탭하면

 

디테일뷰로 이동해서 확대 축소까지 가능하게 하는것을 원했다..

 

문제를 해결한 결과..

 

그럼 빠르게 코드를 되돌아보자!

우선 이미지뷰에 탭제스처를 추가해 주어야 하기 때문에 BaseViewController에 함수 하나 생성해주고,

이미지뷰가 TableViewHeader에 있어서 해당 이미지뷰에 탭 제스처 추가해 주고?

셀렉터 함수 하나 살포시 만들어서.. 데이터 넘겨주고!!

디테일 이미지 뷰컨에 들어갈 BaseView에 객체생성.

 

여기서 포함관계를 보면, SuperView > ScrollView > ImageView 이런식으로 계층이 생성 되어야 함.

 

ScrollView를 addSubview해주고, ImageView를 ScrollView에 addSubview해주면 된다.

 

근데 이제 여기서 중요한것은.. 레이아웃..

 

ScrollView가 어디까지 스크롤이 될 수 있는지 크기를 정해주어야 하는데,

 

여기서 여러가지 시도해본 결과.. ImageView의 크기를 정해주면 핀치줌을 했을때도 해당 사이즈에 맞게 스크롤이 가능하게 된다.

 

해당 뷰컨에서 scrollView.delegate = self 로 위임해주고,

 

UIScrollViewDelegate 채택해서 핀치줌을 가능하게 해주는 함수를 호출해서 return 값으로 이미지뷰를 준다.

 

핀치줌을 할 대상이 이미지뷰라는 뜻.

 

그리고 아래는 핀치줌 최저 최대를 설정해주는것.

 

이것은 원하는 만큼 조절해서 사용해보면 될 것 같다.!

 

아직 UIScrollView의 프로퍼티들을 제대로 사용해보지 못했는데, 개념적으로 정리가 조금 더 필요한 것 같다.

 

다음엔 이번 업데이트에 같이 추가한 Remote Notification 정리를 해보자!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'iOS > 개인 출시 프로젝트' 카테고리의 다른 글

첫 개인 출시 프로젝트 회고록...  (2) 2022.10.04