2013-01-01 7 views
2

페이징이 활성화 된 UIScrollView과 현재 페이지를 나타내는 UIPageControl이 있습니다. 이 방법은 잘 작동하지만 한 번의 스 와이프로 여러 페이지를 탐색하는 관성 스크롤 기능을 도입하고 싶습니다.UIScrollView로 UIPageControl에서 관성 스크롤

내가 본 한 가지 예는 iOS 용 StickTennis 앱입니다. 비슷한 것을 어떻게 할 수 있습니까?

See Image

답변

1

는 그런 다음 사용자의 손가락이 수치 유도을 사용하여 화면을 떠나는 순간에 스크롤의 속도를 계산하는 것, NO에 스크롤 뷰의 pagingEnabled 속성을 설정할 것입니다. 이제 s = v0 * t + a/2 * t^2 수식을 사용하여 스크롤 뷰의 새 위치를 계산할 수 있습니다 (a은 일정한 감속 률이고 v0은 방금 계산 한 속도 임). scrollRectToVisible:animated:을 적절히 업데이트 된 rect으로 반복 호출합니다. 논의.

+0

아주 간단하게 들립니다. 고마워, 나는 이것을 시험해 볼 것이다! –

+0

@VinodVishwanath 당신을 진심으로 환영합니다. 예, 저는 그것이 매우 간단하고 실제로 생각합니다. –

+0

'UIScrollView'에서'touchesEnded' 이벤트를 잡는 데 어려움을 겪었으므로 대신'scrollViewDidScroll' 메서드에서'uiView.contentOffset.x' 값의 차이를 찾아서 속도를 계산했습니다. 그러나 대답은 논리적이므로 표시된 것입니다. 다시 한 번 감사드립니다! –