2010-11-20 5 views
1
- (void)fadeOutStuff 
{ 
    CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"opacity"]; 
    anim.delegate = self; 
    anim.duration = 0.25f; 
    anim.removedOnCompletion = NO; 
    anim.fillMode = kCAFillModeForwards; 
    anim.fromValue = [NSNumber numberWithFloat:1.0f]; 
    anim.fromValue = [NSNumber numberWithFloat:0.0f]; 
    [self.searchList.layer addAnimation:anim forKey:@"animationOpacity"]; 
} 

나는 단지에서 밖으로 개체를 애니메이션이 코드를 가지고 있고, 애니메이션이 완료되면, 레이어가 만질 수 없습니다. 애니메이션 프로세스가 레이어를 레벨/인덱스 아래로 설정합니까? 애니메이션 레이어 뒤에있는 요소는 계속 만질 수 있지만 애니메이션 레이어 자체에는 접근 할 수 없습니다. 나는 설정이 빠졌습니까? 이 코드를 기반으로 잘못된 방식으로 애니메이션을 사용하고 있습니까?CABasicAnimation

답변

0

올바르게 기억하면 숨겨진 개체는 접촉하지 않습니다. 나는 단지 0으로 설정된 불투명도가 적용되면 적용할지 모르지만 0으로 끝나는 대신 0.01f로 처리하면 어떻게 될지보고자 시도합니다.

그런데, 나는 몰라요. 오타이거나 잘못되었지만 anim.fromValue을 두 번 설정하고 anim.toValue을 설정하지 않은 경우

+0

안녕하세요 David,시기 적절한 답변에 감사드립니다. 오타를 수정하고 초기화시 0.01f의 알파로 설정하려고했습니다. 그것은 숨겨진 물건과 같은가요? 보기는 아직 어떤 접촉도받지 못하고 있습니다. – cj5

+0

위치 전환에도 동일한 문제가 있음을 상기합니다. 아직 애니메이션으로 작업 할 수있는 감동적인 견해를 가지고 있습니다. – cj5

+0

좋아요, 난 그냥 애니메이션 및 그것의 불투명도 1.0f로 설정하지 않고 하위 뷰를 추가하고 볼 수 있지만 여전히 이벤트를 터치 반응하지 않습니다. 내가 잘못된 방법으로 하위보기를 추가할까요? 하위 뷰를 구현하는 가장 좋은 방법은 무엇입니까? – cj5

0

저는 이것을 알아 내고 fillMode 속성은 주로 애니메이션 객체에서 터치 이벤트를 비활성화하는 역할을합니다. 애니메이션 작업을하는 동안 터치 이벤트를 처리해야하는 경우에는 사용하지 마십시오. 기본적으로 내가 사용한 해결 방법은 fillMode 속성을 제거한 다음 레이어에 애니메이션을 추가 한 후 애니메이션의 마지막 단계를 수동으로 설정하는 것입니다.

+0

나는 똑같은 문제에 직면하고있다. ..... 나는 당신이했던 방식대로 시도했다. 여전히 그 감각을 감지 할 수 없다. ..... 당신의 코드를 제발 제공해 주시겠습니까? – Minakshi

관련 문제