【发布时间】:2012-11-27 12:31:58
【问题描述】:
我一直在试图弄清这件事的真相,但它逃脱了我。当用户按下它们时,我有一些我想ide的按钮。但不是仅仅隐藏它们,我想要一个动画。我让它们变大,然后缩小到针头,同时消失。
我实际上在 iOS6 中可以按我的意愿工作,但我想我会在 iOS5.1 的模拟器和我的 iPad1 上运行它。两者都使按钮动画出错。它在增长,但随后似乎爆炸到屏幕上的另一个维度。
#pragma mark - animations
-(void)grow:(UIButton *)button {
void (^makeItGrow)(void)= ^{
button.transform = CGAffineTransformScale(button.transform,1.6, 1.6);
};
void (^whenFinished)(BOOL) =
^(BOOL finished) {
if (finished) {
[self shrink:button];
}
};
[UIView animateWithDuration:1 animations:makeItGrow completion:whenFinished];
}
-(void)shrink:(UIButton *)button {
void (^makeItShrink)(void)= ^{
button.transform = CGAffineTransformScale(button.transform, 0.0, 0.0);
button.alpha = 0.0;
};
void (^whenFinished)(BOOL) =
^(BOOL finished) {
if (finished) {
//NSLog(@"shrink finished");
[button setHidden:YES];
[self resetButton:button];
}
};
[UIView animateWithDuration:3 animations:makeItShrink completion:whenFinished];
}
我放慢了动画速度,以便看得更清楚。第一部分按照应有的方式进行,但第二部分(收缩)要么分裂到屏幕上(你必须看到它,它看起来确实有点酷),或者它只是继续从屏幕上长出来!当然不是想要的。
是的,我还在学习,我可能会对我的编码风格提出一些建议 :-)
【问题讨论】:
-
尝试将比例设置为非零数字,例如 0.1,看看是否有帮助。我记得以前 0.0 的比例给我带来了一些问题。
-
谢谢你出现在@borrrden。
标签: objective-c ios ios5 animation ios6