问题出在我使用时:
[transLabel.layer removeAllAnimations];
(transLabel是显示信息的UILabel
)
之后,我尝试向此Label添加新动画
[UIView animateWithDuration:showTime
animations:^{
transLabel.hidden = NO;
transLabel.transform = CGAffineTransformMakeScale(1.5, 1.5);
}
completion:^(BOOL finished) {
transLabel.hidden = YES;
transLabel.transform = CGAffineTransformMakeScale(1.0, 1.0);
}];
但它已经不再适用了,它只是在奇数点击工作。比如,第一次它起作用,第二次它不起作用,但第三次它再次显示,不是,第五次是..
我想要做的是再次再次按下一个按钮 并再次使用动画再次显示标签
谢谢你,等待你的回答
答案 0 :(得分:0)
如果我正确理解了您的问题,则会出现问题,因为表示层会执行所有动画,并且是实际执行所有动画的图层。取消在表示层而不是视图层上反映的正在进行的动画时。尝试捕获对视图图层的更改,看看在这种情况下是否有帮助:
transLabel.layer.transform = transLabel.layer.presentationLayer.transform;
答案 1 :(得分:0)
我刚才有类似的问题。问题是,当你停止动画时,你会隐藏你的transLabel。
在[transLabel.layer removeAllAnimations]之后立即显示;像这样:
[transLabel.layer removeAllAnimations];
transLabel.hidden = NO;