视图动画

来源:互联网 发布:乐谱软件下载 编辑:程序博客网 时间:2024/05/16 14:42

1.+ (void)beginAnimations:(NSString *)animationID context:(void *)context  创建一个动画

      [UIView beginAnimations:@"name" context:nil];

2.+ (void)commitAnimations  执行动画

    [UIView commitAnimations];

3.+ (void)setAnimationDelay:(NSTimeInterval)delay 设置动画延迟

   [UIView setAnimationDelay:2.0f];

4.+ (void)setAnimationDelegate:(id)delegate 设置动画的代理

   [UIView setAnimationDelegate:self];

5.+ (void)setAnimationDidStopSelector:(SEL)selector 设置动画结束时调用的函数

   [UIView setAnimationDidStopSelector:fuction];

6.+ (void)setAnimationDuration:(NSTimeInterval)duration 设置动画花费的时间

   [UIView setAnimationDuration:5];

7.+ (void)setAnimationRepeatAutoreverses:(BOOL)repeatAutoreverses 设置一个动画是否可以自动重复

   [UIView setAnimationRepeatAutoreverses:YES];

8.+ (void)setAnimationRepeatCount:(float)repeatCount 设置动画重复的次数

   [UIView setAnimationRepeatCount:3];

9.+ (void)setAnimationStartDate:(NSDate *)startTime 设置动画开始执行的日期。

下面是一个简单的动画代码例子(在一个控制器类中,self代表控制器)

UIView view = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,460];

[UIView beginAnimations:@"move" context:nil];

[UIView setAnimationDelay:2];

[UIView setAnimationDelegate:self];

[UIView setAnimationDuration:4];

[UIView setAnimationRepeatAutoreverses:YES];

[UIView setAnimationRepeatCount:3];

[UIView setAnimationDidStopSelector:afunction];

view.frame = CGRectMack(0,100,320,460);

[UIView commitAnimations];

- (void)afunction {

      NSLOG(@"动画结束");

}


执行上述代码:

首先因为设置了动画延迟是2秒,所以代码执行2秒后才开始执行动画,并且设置了动画花费的时间是4s,动画重复3次,

执行动画后view视图将从原来的位置向下移动100像素,并且动画结束时调用afunction函数.

原创粉丝点击