2010-01-15 6 views
10

저는 iPhone 용 코어 플롯을 조사해 보았고 실제로 사용 된 애니메이션 예제를 찾는 데 어려움을 겪고 있습니다.Core-Plot iPhone 애니메이션 사례

코어 플롯 애니메이션을 사용하여 누군가가 버튼을 클릭 할 때 추가 플롯을 그래프에 추가하는 방법의 예가 필요합니다.

누군가가 나를 제작하고 예제를 보여 주거나 링크를 표시 할 수 있다면 좋을 것입니다.

감사합니다, 크레이그

답변

13

핵심 플롯 내에서 공식 CPAnimation 클래스는 지금 스터브 있습니다. 어떤 시점에서, 우리는 그것들의 모든 기능을 가능하게 할 것입니다.

그동안 Core Plot의 모든 보이는 요소는 Core Animation CALayer이므로 기존 Core Animation 메서드를 사용하여 애니메이션을 만들 수 있습니다.

dataSourceLinePlot.opacity = 0.0f; 
[graph addPlot:dataSourceLinePlot]; 

을하고 그것을 페이드 불투명도를 애니메이션 : 당신이 (시험 핵심 플롯 아이폰 응용 프로그램 등) dataSourceLinePlot라는 플롯이있는 경우 예를 들어, 0.0의 불투명도 플롯을 시작할 수 :

CABasicAnimation *fadeInAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"]; 
fadeInAnimation.duration = 1.0f; 
fadeInAnimation.removedOnCompletion = NO; 
fadeInAnimation.fillMode = kCAFillModeForwards; 
fadeInAnimation.toValue = [NSNumber numberWithFloat:1.0]; 
[dataSourceLinePlot addAnimation:fadeInAnimation forKey:@"animateOpacity"]; 

이렇게하면 1 초 간격으로 기존 그래프의 새 플롯이 페이드 인됩니다. 또한 측면에서 애니메이션을 적용하거나 변형을 사용하여 위치에 맞게 조정하는 것과 비슷한 작업을 수행 할 수 있습니다. 이러한 종류의 효과를 얻기 위해 CAT 변환을 사용할 수도 있습니다.

EDIT (1/17/2010) : 코어 플롯 iPhone 테스트 응용 프로그램에는 이제 위에서 설명한 페이드 인 애니메이션의 예제가 포함되어 있습니다.

+0

Brad, Google 코드의 예제 프로그램에서 솔루션 작동 방식을 확인했습니다. 제 생각에는 버튼을 클릭 한 후에 애니메이션을 시작하고 싶습니다. 버튼 클릭 이벤트에 애니메이션 코드를 복사하면 작동하지 않습니다. 어떤 도움이 필요합니까? –

+0

애니메이션 배치 위치는 중요하지 않습니다. 동일한 방식으로 작동해야합니다. 버튼 클릭으로 메소드가 실행되고 있습니까? 샘플 코드에서 dataSourceLinePlot에 대한 참조는 -viewDidLoad 메서드 외부에서 유지 관리되지 않습니다. 이 플롯에 대한 참조가 메서드 내에서 올바른지 확인하여 애니메이션이 잘못된 레이어에 추가되지 않도록하거나 무효로 만듭니다. –

+0

죄송합니다. Brad, 버튼 이벤트를 잘못된 이벤트 (외부로 드래그)로 연결했습니다 ... 문제가 해결되었습니다. Core-Plot을 사랑하면 더 많은 기능을보고 싶어 할 것입니다. –