我想以这样的方式为附加的屏幕设置动画,当屏幕出现在屏幕上时:
1) 数字将从动画0
到最终值,即1
- 2
- 3
-.... 51
-52
2) 每个条形将从一条细线开始,然后向一侧延伸,直到达到规定的尺寸。
3)所有动画将同时发生。
4)如果可能的话,如何在条形下方添加阴影?
5)如何实现栏(以图形方式)?有什么例子吗?
我想以这样的方式为附加的屏幕设置动画,当屏幕出现在屏幕上时:
1) 数字将从动画0
到最终值,即1
- 2
- 3
-.... 51
-52
2) 每个条形将从一条细线开始,然后向一侧延伸,直到达到规定的尺寸。
3)所有动画将同时发生。
4)如果可能的话,如何在条形下方添加阴影?
5)如何实现栏(以图形方式)?有什么例子吗?
对于酒吧本身,使用简单的 UIView 实例。导入后<QuartzCore/QuartzCore.h>
,您可以通过图层 ( view.layer
) 为它们设置边框和阴影。参见CALayer:https ://developer.apple.com/library/ios/#documentation/graphicsimaging/reference/CALayer_class/Introduction/Introduction.html
borderWidth, borderColor, backgroundColor
shadowOpacity, shadowRadius, shadowOffset, shadowColor, shadowPath
对于数字的动画,使用计时器并增加数字,直到达到实际值。嗯。像这样:
CGFloat animationDuration = 1.0;
self.targetValue = 50;
[NSTimer scheduledTimerWithTimeInterval:animationDuration/targetValue target:self selector:@selector(increaseValue:) userInfo:nil repeats:YES];
然后是这样的方法:
- (void)increaseValue:(NSTimer*)timer;
{
self.label.text = [NSString stringWithFormat: @"%d", [self.label.text intValue]+1];
if ([self.label.text intValue] == self.targetValue) {
[timer invalidate];
}
}
对于动画,只需调整帧的大小:
[UIView animateWithDuration:animationDuration animations:^{
CGRect rect = self.barView.frame;
rect.size.width = self.targetValue;
self.barView.frame = rect;
}];