2011-08-15 3 views
0

나는 내 자신을 구현하기 위해 UIScrollView의 기본 감속 동작을 비활성화하는 좋은 이유가있었습니다. 사용자가 드래그 완료되면스크롤보기를 수동으로 감속해도 스크롤 표시가 나타나지 않는 이유는 무엇입니까?

1), 내가 NSTimer가 감속하기 시작 :

은 내가 할 것은 이것이다.

[self setContentOffset:CGPointMake(self.contentOffset.x, self.contentOffset.y + dy) animated:NO]; 

스크롤보기 좋게 내가 그것을 할 방법 다만 방법을 감속 :

2) 타이머는이 같이있는 ScrollView를 스크롤하는 방법 주기적으로 호출합니다.

하지만 타이머가 스크롤 속도를 줄이면 스크롤 표시기가 contentView에 붙어 완전히 위아래로 슬라이드 한 다음 사라집니다.

-flashScrollIndicators을 호출해도 스크롤 할 때 수동으로 애니메이션을 표시하는 데 도움이되지 않습니다.

다른 사람에게도 마찬가지입니까?

+0

'scrollIndicator'는 표준 스크롤 동작에 사용되는 것으로 생각됩니다. 당신은 * 자신의 롤을해야 할 수도 있습니다 ... – Mundi

+1

기본 동작을 사용하는 대신 자신의 감속을할만한 이유는 상상하기 어렵습니다. 왜 이런 짓을하는? – jtbandes

답변

0

메인 (GUI) 스레드에서 타이머를 실행하고 있습니까? 그렇다면 타이머가 만료 될 때까지 GUI를 잠글 수 있습니다. 새 스레드를 회전하여 타이머를 실행 한 다음 InvokeOnMainThread를 사용하여 콜백 메소드를 구현하여 스크롤 뷰를 원하는 위치로 업데이트하십시오.

관련 문제