코어 애니메이션을 사용하는 Leopard 용 스크린 세이버를 만들었습니다. 지나치게 복잡한 일은하지 않습니다. 하기 구조에서 데이터의 "테이블"을 생성하도록하고 CALayers CATextLayers 트리를 사용하여 한번에 스크린에 렌더링 50 CALayers 거기에서 가장화면 보호기의 육포/떨림 (코어) 애니메이션?
- root
› maincontainer
› subcontainer
› row [multiple]
› cell [multiple]
› text layer
. 내가 CABasicAnimation을 사용하여보기에 "테이블", 나는 "하위 컨테이너"를 애니메이션을 추가 해요을 구축하면
. 다시 말하지만, 저는 단순한 페이드 인 (fade-in)과 같은 멋진 일을하지는 않습니다.
애니메이션이 발생하는 동안 문제가되는 것은 고통스러운입니다. 3GB RAM이 장착 된 3.06Ghz iMac 인 개발 기계에서는 약간의 변화가 있었지만 점차적 인 변화보다는 10 단계로 애니메이션을 잘라내는 것으로 보입니다.
그것은 스크린 세이버를 대상으로 한 PPC 맥 미니에 악화; 일반적으로 애니메이션 시작 부분 (0 % 불투명도)에서 절반 (50 %)까지 "트위닝"하여 애니메이션을 재생하는 것을 거부합니다.
나는 오브젝티브 -c 비교적 새로운 해요 내 경험 가비지 수집 환경을 사용하여 기반으로하지만 나는 화면 보호기가 같은 문제가 발생할 시작 지점에 충분한 메모리를 유출하고있어 믿을 수 없어.
또한, 나는 하드웨어와의 문제가되지 않습니다 확신 해요. 필자는 코어 애니메이션을 사용하는 빌트인 스크린 세이버를 테스트하고 비교를 위해 CA 기반의 무료 CA를 다운로드했으며, 두 머신 모두에서 문제없이 실행합니다.
스크린 세이버에서 CA를 사용하거나 일반적으로 CA를 사용하는 것과 관련하여 정보가 상당히 희박하며 프로필 작성/문제 해결 스크린 세이버에 대한 조언/자습서가 존재하지 않는 것 같습니다. 따라서 공동체가 제공 할 수있는 모든 도움은 환영받을 것입니다! 암시 적 애니메이션이 조금 부드러운 것을 도와 것처럼
--- UPDATE ---
보인다. 여전히 다소 엉망이지만, 내 솔루션과 같이 명시적인 애니메이션으로 모든 것을 애니메이션으로 만들려고 노력하는 것만 큼 나쁘지는 않습니다.