【发布时间】:2011-09-30 22:21:14
【问题描述】:
这是测试项目中主视图控制器的 viewDidLoad:
- (void)viewDidLoad
{ [超级viewDidLoad];
UIView *containerView = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 300, 300)];
[self.view addSubview:containerView];
UIView *redView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 300)];
[redView setBackgroundColor:[UIColor redColor]];
[containerView addSubview:redView];
UIView *yellowView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 300)];
[yellowView setBackgroundColor:[UIColor yellowColor]];
[UIView transitionWithView:containerView duration:3
options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{
[redView removeFromSuperview];
[containerView addSubview:yellowView];
}
completion:NULL];
}
黄色框刚刚出现。无论我尝试哪个 UIViewAnimationOption 都没有动画。为什么???
编辑:我还尝试使用 performSelector withDelay 将动画移出 viewDidLoad 并进入另一个方法。结果相同 - 没有动画。
也试过这个: [UIView transitionFromView:redView toView:yellowView duration:3 options:UIViewAnimationOptionTransitionFlipFromLeft completion:NULL];
不过,黄色视图只是出现了。没有动画。
【问题讨论】:
标签: ios uiview uiviewcontroller uiviewanimationtransition