One of the most powerful and useful property of UIView is transform, which takes a CGAffineTransform. This is a matrix that express how each pixel of UIView should be modified, applying some mathematical formulas.
CGAffineTransformScale: CGAffineTransformScale use for scale a view up and down. A transform value of 5.0 means make the view 5 times bigger than actual frame.
CGAffineTransformRotate: Use for rotate a view by given angle. It uses radian.
Here a piece of code for render a view with animation from center.
UIImageView *aniView;
//method for display subview.
-(void) displaySubView{
//Create object for sub view
if (!aniView) {
aniView = [[UIImageView alloc] initWithFrame:CGRectMake(self.view.center.x, self.view.center.y, 0, 0)];
aniView.backgroundColor = [UIColor clearColor];
aniView.image = [UIImage imageNamed:@"imagename.png"];
aniView.clipsToBounds = YES;
aniView.center = self.view.center;
// Reduce view to 1/10th of its original frame
aniView.transform = CGAffineTransformScale(aniView.transform, .01, .01);
[self.view addSubview:aniView];
}
[UIView animateWithDuration:1 animations:^{
// return the view to original frame
aniView.transform = CGAffineTransformScale(aniView.transform, 100, 100);
}];
}
//Method for hide subview
-(void) hideSubView{
[UIView animateWithDuration:1 animations:^{
aniView.transform = CGAffineTransformScale(aniView.transform, .01, .01);
}];
}
CGAffineTransformScale: CGAffineTransformScale use for scale a view up and down. A transform value of 5.0 means make the view 5 times bigger than actual frame.
CGAffineTransformRotate: Use for rotate a view by given angle. It uses radian.
Here a piece of code for render a view with animation from center.
UIImageView *aniView;
//method for display subview.
-(void) displaySubView{
//Create object for sub view
if (!aniView) {
aniView = [[UIImageView alloc] initWithFrame:CGRectMake(self.view.center.x, self.view.center.y, 0, 0)];
aniView.backgroundColor = [UIColor clearColor];
aniView.image = [UIImage imageNamed:@"imagename.png"];
aniView.clipsToBounds = YES;
aniView.center = self.view.center;
// Reduce view to 1/10th of its original frame
aniView.transform = CGAffineTransformScale(aniView.transform, .01, .01);
[self.view addSubview:aniView];
}
[UIView animateWithDuration:1 animations:^{
// return the view to original frame
aniView.transform = CGAffineTransformScale(aniView.transform, 100, 100);
}];
}
//Method for hide subview
-(void) hideSubView{
[UIView animateWithDuration:1 animations:^{
aniView.transform = CGAffineTransformScale(aniView.transform, .01, .01);
}];
}
