UIView动画设置
2014-03-22 15:15
302 查看
- (void)loadView
{
//将viewController的根view初始化
self.view = [[[UIView
alloc] initWithFrame:CGRectMake(0,
0, 320,
480)]
autorelease];
self.view.backgroundColor = [UIColor
whiteColor];
_imgView = [[UIImageView
alloc] initWithFrame:CGRectMake(10,
20,
100, 200)];
_imgView.image = [UIImage
imageNamed:@"iphone.png"];
[self.view
addSubview:_imgView];
[_imgView
release];
UIButton *btn = [UIButton
buttonWithType:UIButtonTypeRoundedRect];
btn.frame =
CGRectMake(320-100,
30, 100,
30);
[btn setTitle:@"ani"
forState:UIControlStateNormal];
[btn addTarget:self
action:@selector(animationAction:)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:btn];
}
-(void)animationAction:(id)sender
{
//动画块开始
[UIView
beginAnimations:nil
context:nil];
[UIView
setAnimationDuration:0.65f];//设置动画时间
[UIView
setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView
setAnimationRepeatCount:1];
//设置动画转变方式
[UIView
setAnimationTransition:UIViewAnimationTransitionCurlDown
forView:_imgView
cache:YES];
//[UIView setAnimationDelegate:self];//设置动画代理
//[UIView setAnimationWillStartSelector:@selector()]
//[UIView setAnimationDidStopSelector:@selector(animationDidStop)];
//_imgView.frame = CGRectMake(10, 20, 10, 20);
//_imgView.alpha = 0.0;
//_imgView.hidden = YES;
//旋转
/*
CGAffineTransform newTransForm = CGAffineTransformRotate(_imgView.transform, M_PI_4);
_imgView.transform = newTransForm;
*/
//缩放
/*
//CGAffineTransform newTrans =CGAffineTransformMakeScale(0.7, 0.7);
CGAffineTransform newTrans = CGAffineTransformScale(_imgView.transform, 0.9, 0.9);
_imgView.transform = newTrans;
*/
//位移
//CGAffineTransform newTrans = CGAffineTransformMakeTranslation(100, 100);
CGAffineTransform newTrans =
CGAffineTransformTranslate(_imgView.transform,
10,
10);
_imgView.transform = newTrans;
[UIView
commitAnimations];
}
-(void)animationDidStop
{
[UIView
beginAnimations:nil
context:nil];
[UIView
setAnimationDuration:0.35f];//设置动画时间
[UIView
setAnimationCurve:UIViewAnimationCurveEaseInOut];
_imgView.frame =
CGRectMake(10,
20, 100,
200);
//_imgView.alpha = 1.0f;
_imgView.hidden =
NO;
[UIView
commitAnimations];
}
{
//将viewController的根view初始化
self.view = [[[UIView
alloc] initWithFrame:CGRectMake(0,
0, 320,
480)]
autorelease];
self.view.backgroundColor = [UIColor
whiteColor];
_imgView = [[UIImageView
alloc] initWithFrame:CGRectMake(10,
20,
100, 200)];
_imgView.image = [UIImage
imageNamed:@"iphone.png"];
[self.view
addSubview:_imgView];
[_imgView
release];
UIButton *btn = [UIButton
buttonWithType:UIButtonTypeRoundedRect];
btn.frame =
CGRectMake(320-100,
30, 100,
30);
[btn setTitle:@"ani"
forState:UIControlStateNormal];
[btn addTarget:self
action:@selector(animationAction:)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:btn];
}
-(void)animationAction:(id)sender
{
//动画块开始
[UIView
beginAnimations:nil
context:nil];
[UIView
setAnimationDuration:0.65f];//设置动画时间
[UIView
setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView
setAnimationRepeatCount:1];
//设置动画转变方式
[UIView
setAnimationTransition:UIViewAnimationTransitionCurlDown
forView:_imgView
cache:YES];
//[UIView setAnimationDelegate:self];//设置动画代理
//[UIView setAnimationWillStartSelector:@selector()]
//[UIView setAnimationDidStopSelector:@selector(animationDidStop)];
//_imgView.frame = CGRectMake(10, 20, 10, 20);
//_imgView.alpha = 0.0;
//_imgView.hidden = YES;
//旋转
/*
CGAffineTransform newTransForm = CGAffineTransformRotate(_imgView.transform, M_PI_4);
_imgView.transform = newTransForm;
*/
//缩放
/*
//CGAffineTransform newTrans =CGAffineTransformMakeScale(0.7, 0.7);
CGAffineTransform newTrans = CGAffineTransformScale(_imgView.transform, 0.9, 0.9);
_imgView.transform = newTrans;
*/
//位移
//CGAffineTransform newTrans = CGAffineTransformMakeTranslation(100, 100);
CGAffineTransform newTrans =
CGAffineTransformTranslate(_imgView.transform,
10,
10);
_imgView.transform = newTrans;
[UIView
commitAnimations];
}
-(void)animationDidStop
{
[UIView
beginAnimations:nil
context:nil];
[UIView
setAnimationDuration:0.35f];//设置动画时间
[UIView
setAnimationCurve:UIViewAnimationCurveEaseInOut];
_imgView.frame =
CGRectMake(10,
20, 100,
200);
//_imgView.alpha = 1.0f;
_imgView.hidden =
NO;
[UIView
commitAnimations];
}
相关文章推荐
- ios UIView控件设置动画后添加点击事件不起作用
- UIView进行动画时,设置其依然可以响应用户操作
- 动画设置 UIView动画实现 CAAnimation动画实现
- UIView控件的一些常用方法和简单动画设置
- 【深入浅出IOS开发】在UIView中设置动画
- 【深入浅出IOS开发】在UIView中设置动画
- 设置UIViewController模态进入的动画
- UIView动画设置
- UIView 动画的参数设置
- 设置UIViewController模态进入的动画
- OC学习之UIView动画设置
- UIView动画
- iOS动画篇:UIView动画
- Objective-c UIViewController原生态跳转动画
- 调用UIview封装的动画
- animations 之 对控件设置动画效果
- IOS学习 动画和绘画:UIView基础动画
- ios-动画设置基础方式
- UIView 动画
- overridePendingTransition设置Activity切换动画