运用UIView中的transform属性实现动画效果

在iOS的开发过程中,肯定会用到动画效果,要实现动画效果可以使用下面的各种方法搞定,

  • 运用UIView 中的一系列的animation方法
  • 运用Core Animation进行操作
  • 运用UIView中的transform属性实现动画效果

今天就说说最后一种方法的实现,而另外的两种方法已经在上一篇文章中有所介绍了。

下面展示把 BViewController 动画加载到 AViewController中。

假设在AViewController中包含了一个button按钮,实现了一个push方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
- (IBAction)push:(id)sender {
BViewController *bViewController = [[BViewController alloc] init];
[bViewController willMoveToParentViewController:self];
[self addChildViewController:bViewController];
bViewController.view.backgroundColor = [UIColor redColor];
bViewController.view.frame = self.view.bounds;
[self.view addSubview:bViewController.view];
bViewController.view.transform = CGAffineTransformMakeTranslation(self.view.bounds.size.width, 0);

[UIView animateWithDuration:2
animations:^{
bViewController.view.transform = CGAffineTransformIdentity;
} completion:^(BOOL finished) {
[bViewController didMoveToParentViewController:self];
}];

}
文章目录
,