我正试图为alpha
我的观点制作动画,但我无法让它发挥作用。
self.transform = CGAffineTransformMakeScale(0.01, 0.01);
[UIView animateWithDuration:1.5 animations:^{
self.alpha = 0;
self.transform = CGAffineTransformIdentity;
} completion:^(BOOL finished) {
self.alpha = 1;
}];
动画有效,但alpha在1处是静态的。虽然转换动画正确。如果我删除设置转换(只是为了测试它是否由它引起),没有任何反应。
我也试过重复动画,重复但是alpha总是1:
[UIView animateWithDuration:1.5 delay:delay
options:(UIViewAnimationOptionRepeat
| UIViewAnimationOptionCurveEaseInOut
| UIViewAnimationOptionTransitionNone) animations:^{
self.alpha = 0;
self.transform = CGAffineTransformIdentity;
} completion:^(BOOL finished) {
if(finished){
self.alpha = 1;
}
}];
为什么会这样?
答案 0 :(得分:0)
我找到了解决方案。它有多个问题。第一个,视图是opaque
。我设置了NO
不透明,没有任何反应。然后我意识到我从alpha = 0
开始,我也改变了它,它开始以我想要的方式制作动画。
归功于Hampus Nilsson在这里的评论:Problems animating UIView alpha