0
배열의 단락에서 실행하려는 UIView 애니메이션 블록이 있습니다.Swift UIView 애니메이션 블록 증가 오류
UIView.animateWithDuration(0.4, delay: 0.2, options: .CurveEaseOut, animations: {
var frame = self.textViewForPlayer.frame
frame.origin.y += 20
self.textViewForPlayer.frame = frame
}, completion: { finished in
UIView.animateWithDuration(0.4, delay: 0, options: .CurveEaseOut, animations: {
var frame = self.textViewForPlayer.frame
frame.origin.y -= 80
self.textViewForPlayer.frame = frame
}, completion: { finished in
})
}
)
textViewForPlayer = paragraphs[++currentParagraph]
이상한 것은 인 - 첫번째 블록 (완료 전에 제 애니메이션) 첫 번째 단락의 애니메이션을 실행되지만 두 번째 단락에 제 완료 블록이 실행에 체인화 애니메이션 (든 "단락 [++ currentParagraph] "가 두 개의 애니메이션 블록 사이에서 실행 중임
어떻게 이런 일이 일어나고 있는지 알 수 없지만, 증가 코드는 애니메이션 자체 뒤에 있으므로 기괴하거나 심지어 중간에 실행되는 버그로 보입니다
감사합니다. 그래서 난 미래에 어떤 정의되지 않은 지점에서 완료 블록이 호출됩니다 같아요. – Chris
기본적으로 애니메이션이 끝난 후. 애니메이션은 일정한 지속 시간과 지연을 가질 수 있기 때문에 미래에 있습니다. – herby