• Jan
  • Feb
  • Mar
  • Apr
  • May
  • Jun
  • Jul
  • Aug
  • Sep
  • Oct
  • Nov
  • Dec
  • Sun
  • Mon
  • Tue
  • Wed
  • Thu
  • Fri
  • Sat
  • 27
  • 28
  • 29
  • 30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

UIScrollViewDelegate 메소드 파헤치기

Docs 순으로 …

Responding to Scrolling and Dragging 스크롤, 드래그에 반응

image

  • scrollViewDidScroll()
  • 스크롤 할 때 마다 계속 호출.
  • offset 값이 바뀔 때 마다 호출되므로,,, 한번 쓰윽 스크롤 해도 우르르르르르 호출됨

image

  • scrollViewWillBeginDragging()
  • 스크롤 뷰에서 드래그 하기 시작할 때 한 번만 호출
  • 시간이 쪼금 걸리거나, 이동거리를 약간 요할 수 있음

image

  • scrollViewWillEndDragging()
  • 손을 뗐을 때 한 번만 호출
  • 속도(velocity) = points/millisecond
  • targetContentOffset을 변경하여 스크롤 뷰가 정지되는 위치를 조정할 수 있음. 헐 나 이거 써야될 걸

image

  • scollViewDidEndDragging()
  • 손을 뗐을 때 한 번만 호출 (위 scrollViewWillEndDragging과 동일)
  • 스크롤 모션의 감속 여부를 알 수 있음
  • decelerate : 손 뗀 후로 계속 이동할 경우 true

image

  • scrollViewShouldScrollToTop()
  • 맨 위 누르면 뷰의 최상단으로 올라가는 거 허용할건지 안 할건지 설정
  • 이 함수가 정의되어있지 않으면, default 값은 YES임

image

  • scrollViewDidScrollToTop()
  • 맨 위 누르면 뷰의 최상단으로 올라가는 이벤트가 발생할 때 호출되는 함수
  • 이미 최상단에 위치하고 있으면 즉시 호출될 수 있음

image

  • scrollViewWillBeginDecelerating()
  • 손을 뗀 이후로!! 감속이 시작됐을 때 호출되는 함수

image

  • scrollViewDidEndDecelerating()
  • 감속이 끝났을 때 호출되는 함수 (스크롤 뷰의 움직임이 멈췄을 때 halt 상태일 때! 정지!)

Managing Zooming

image

  • viewForZooming()
  • ImageView를 확대하고 싶을 때 자주 쓰는 것 같다. 여기 참고
  • scale될 뷰를 반환한다. 만약 deletate가 nil을 반환하면 아무 일도 일어나지 않음

image

  • scrollViewWillBeginZooming()
  • scrollView가 그 내용을 zoom 하기 전에 호출됨

image

  • scrollViewDidEndZooming()
  • content의 zoom이 끝났을 때 호출됨
  • scale between minimum and maximum. called after any ‘bounce’ animations

image

  • scrollViewDidZoom()
  • Tells the delegate that the scroll view’s zoom factor changed.

Responding to Scrolling Animations

image

  • scrollViewDidEndScrollingAnimation()
  • setContentOffset 또는 scrollRectVisible 이 사용될 때 호출되는 함수
  • called when setContentOffset/scrollRectVisible:animated: finishes. not called if not animating

Responding to Inset Changes

image

  • scrollViewDidChangeAdjustedContentInset()

  • adjustedContentInset = contentInset + system inset

  • contentInset을 변경하거나 content insets가 시스템에 의해 조정되면 UIScrollView 및 UIScrollView Delegate의 메소드가 호출 됨.