2011-07-28 9 views
0

나는 drawRect:에 그려져있는 UIView의 하위 클래스를 작성했습니다. 실제로 영화의 하루 길이의 타임 라인과 비슷합니다. 틱 및 시간 텍스트 레이블이있는 시간 축을 그립니다. 최대 24 시간까지 확대 할 수 있습니다. 확대했을 때 팬 제스처로 스크롤 할 수 있습니다. 여기에 질문이 있습니다. 간단한 애니메이션을 어떻게 구현할 수 있습니까? 손가락을 떼면 타임 라인이 잠시 동안 계속 스크롤 한 다음 멈 춥니 다 (음의 가속으로).팬 제스처 애니메이션

이 아이디어를 내 마음에 오는 :

  1. 하는
  2. 새로운 클래스 만들기 다른 스레드를 사용하여 혼자 애니메이션을 구현 - CALayer의 서브 클래스를 다음 CABasicAnimation를 사용합니다. 이 클래스를 내 뷰의 레이어에 추가하십시오. 하지만 여기에 내가보기에 완전히 새로운 서브 클래스 인 CALayer으로 작성된 모든 코드를 옮겨야한다. 괜찮을까요?

다른 아이디어가 있습니까?

답변

0

UIScrollView에서보기를 통합하는 것이 더 쉽지 않을까요? 스크롤링 및 확대/축소를 처리하고 수업에서 그림 만 처리하게 할 수 있습니까?

+0

당신은'UIScrollView'의 서브 클래스를 만드는 것을 의미합니까? – peetonn

+0

아니요, 사용자 정의보기를 scrollview 내부에 두는 것, drawRect 메소드를 구현하여 그 자체를 다시 그리지 만, scrollview에 의해 스크롤 및 확대/축소가 완료되었습니다. 그림을 다룰 필요가 있고 나머지는 다 처리하지 않으면 훨씬 더 쉽습니다. –

+0

하지만 내 시각은 시각적 표현이 줌 레벨에 달려 있기 때문에 확대/축소 및 스크롤링에 대한 응답이 필요합니다. 어쨌든, 나는 변종 1을 선택하여 내 문제를 해결했습니다 - 혼자서 구현하십시오. 답장을 보내 주셔서 감사합니다! – peetonn