- (void)Animations{
/*
// First create a CATransition object to describe the transition
CATransition *transition = [CATransition animation];
// Animate over 3/4 of a second
transition.duration = 1.0f;
// using the ease in/out timing function
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
// Now to set the type of transition. Since we need to choose at random, we'll setup a couple of arrays to help us.
NSString *types[4] = {kCATransitionMoveIn, kCATransitionPush, kCATransitionReveal, kCATransitionFade};
// NSString *subtypes[4] = {kCATransitionFromLeft, kCATransitionFromRight, kCATransitionFromTop, kCATransitionFromBottom};
// int rnd = random() % 4;
transition.type = types[3];
// Finally, to avoid overlapping transitions we assign ourselves as the delegate for the animation and wait for the
// -animationDidStop:finished: message. When it comes in, we will flag that we are no longer transitioning.
transition.delegate = self;
// Next add it to the containerView's layer. This will perform the transition based on how we change its contents.
[self.layer addAnimation:transition forKey:nil];
// Here we hide view1, and show view2, which will cause Core Animation to animate view1 away and view2 in.
self.dlg.hidden = YES;
self.hidden = YES;
*/
self.layer.opacity = 1.0f;
[UIView beginAnimations:nil context:UIGraphicsGetCurrentContext()];
[UIView setAnimationDuration:.3f];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animation_Stop)];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
self.hidden = NO;
self.layer.opacity = .0f;
[UIView commitAnimations];
}
- (void)animation_Stop{
if ([controller.delegate respondsToSelector:@selector(dialogShouldClose:)]) {
if ([controller.delegate dialogShouldClose:controller]) {
[self close];
if ([controller.delegate respondsToSelector:@selector(dialogCancel:)]){
[controller.delegate dialogCancel:controller];
}
[self destroy];
}
} else {
[self close];
if ([controller.delegate respondsToSelector:@selector(dialogCancel:)]){
[controller.delegate dialogCancel:controller];
}
[self destroy];
}
}
-(void)animationDidStop:(CAAnimation *)theAnimation finished:(BOOL)flag{
[self close];
[self destroy];
}
use iphone animation
最新推荐文章于 2024-09-12 14:32:40 发布