UIView 动画 transform CGAffineTransformIdentity;

#import "ViewController.h"
 
@implementation ViewController
 
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    
    iv = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 100, 30)];
    iv.image = [UIImage imageNamed:@"2"];
    [self.view addSubview:iv];
    [iv release];
    
    [UIView animateWithDuration:1.0f animations:^(void){
        iv.alpha = 0.0f;
        iv.transform = CGAffineTransformMakeTranslation(10.0f, 0.0f);
    }];
    
    UIButton * btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    [btn setTitle:@"back" forState:UIControlStateNormal];
    [btn addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
    btn.frame = CGRectMake(200, 200, 50, 30);
    [self.view addSubview:btn];
    
    UIButton * btn1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    [btn1 setTitle:@"disappear" forState:UIControlStateNormal];
    [btn1 addTarget:self action:@selector(btn1Pressed:) forControlEvents:UIControlEventTouchUpInside];
    btn1.frame = CGRectMake(250, 200, 50, 30);
    [self.view addSubview:btn1];
}
-(void)btnPressed:(id)sender
{
    [UIView animateWithDuration:1.0f animations:^(void){
        iv.alpha = 1.0f;
        iv.transform = CGAffineTransformIdentity;
    }];
}
-(void)btn1Pressed:(id)sender
{
    [UIView animateWithDuration:1.0f animations:^(void){
        iv.alpha = 0.0f;
        iv.transform = CGAffineTransformMakeTranslation(10.0f, 0.0f);
    }];
}
 
@end
 
CGAffineTransformIdentity属性能还原到 进行动画 之前的状态

 

猜你喜欢

转载自duchengjiu.iteye.com/blog/1914373