2014-02-27 3 views
2

iPad에서 타이머 앱을 열면 시간이 다가 오면 빨간색으로 변하는이 아름다운 회색 원이 생깁니다. 나는 이것을 모방하는 것을 배우고 싶다. Quartz 2D가 iOS 용으로 사용되는 것에 대한 정보를 거의 찾지 못했지만, Quartz 2D를 하나의 옵션으로 생각했습니다. 나는이 모든 부분에서 상당히 n00b이므로, 원을 돌아 다니는 좀 더 쉬운 방법을 놓칠 수 있습니다. 현재 시간을 중간에 유지하십시오.iPad의 타이머 앱에서 타이머를 모방합니다.

누군가 올바른 방향으로 나를 가리킬 수 있다면, 나는 감사할만한 사람이 될 것입니다. 미리 감사드립니다!

답변

0

CAShapeLayer을 사용하여 원을 만들 수 있습니다. Core Animation을 사용하면 시간 경과에 따라 한 색상에서 다른 색상으로 전환을 애니메이션으로 나타낼 수 있습니다. CAShaperLayerfillColor 속성을 애니메이션화 할 수 있습니다. 다음과 같이 바뀝니다.

CAShapeLayer *myCircleLayer = ...; // create a circle layer and add it to your view 
CABasicAnimation* transition = [CABasicAnimation animationWithKeyPath:@"fillColor"]; 
transition.fromValue = [UIColor grayColor]; 
transition.toValue = [UIColor redColor]; 
transition.duration = secondsUntilTimerExpires; 
[myCircleLayer addAnimation:transition forKey:@"fillColor"]; 

타이머가 만료 될 때만 애니메이션을 추가 할 수 있습니다. 예를 들어 1 시간이 넘는 매우 길고 느린 애니메이션은 타이머가 만료 될 때까지 사용자가 시간을 결정하는 데 도움이되지 않는 상당히 긴 시간 동안 주로 빨간색으로 표시됩니다.

+1

감사합니다. 감사합니다. – adammenges