前幾天做了一個(gè)動(dòng)畫,進(jìn)入頁面彈出一個(gè)view,過了幾秒之后消失。
類型算是延遲動(dòng)畫吧,出現(xiàn)了這樣一個(gè)問題,A,B,C,D,E .快速進(jìn)入退出切換界面的時(shí)候會(huì)出現(xiàn)動(dòng)畫卡頓。(注 : A->b? ? c->b? ? d->b? ? 偶爾有的時(shí)候E->B 的時(shí)候會(huì)出現(xiàn)卡頓)
原來錯(cuò)誤的原因是 使用GCD dis 延遲執(zhí)行哪個(gè)方法,不過顯然不適合快速切換點(diǎn)擊。
最后,使用iOS 官方方法解決了這一問題
[UIView animateWithDuration:動(dòng)畫時(shí)間float類型 delay:延遲時(shí)間float類型 options:UIViewAnimationOptionCurveLinear animations:^{
_recordImageView.transform = endAngle;
} completion:^(BOOL finished) {
}];
}
[_recordImageView.layer removeAllAnimations];//會(huì)結(jié)束動(dòng)畫,使finished變量返回Null