문제

나는 각 버튼의 알파를 0.0으로 돌리는 것 사이에서 지연하려고하지만, 내가 가진 것은 작동하지 않습니다.

[UIView animateWithDuration:1.5 delay:.25 options:UIViewAnimationCurveLinear animations:^{button.alpha = 0.0;
            button2.alpha = 0.0;
            button3.alpha = 0.0;
            button4.alpha = 0.0;
            button5.alpha = 0.0;} completion:^(BOOL finished){ ; }];
.

지연으로 하나의 애니메이션을 어떻게 움직이게합니까?

도움이 되었습니까?

해결책

애니메이션 블록의 각 변경 사이의 지연이 아닌 애니메이션을 시작하는 것은 애니메이션을 시작하는 것입니다.

배열을 사용하는 대신 수동으로 개별 변수를 수동으로 만들기로 결정하여 일련의 버튼을 사용하여 자신을 불필요하게 어렵게 만들었습니다.변수 컬렉션이있는 경우 일반적으로 정렬 컬렉션에 저장해야합니다.

배열에있는 경우 여기에 할 수있는 방법이 있습니다.

NSUInteger i = 0;
float duration = 1.5f;
for (UIButton *button in buttons) {
    [UIView animateWithDuration:duration delay:0.25f+duration*i UIViewAnimationCurveLinear animations:^{
        button.alpha = 0.0f;
    } completion:NULL];
    ++i;
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top