Flo*_*ked 7 iphone xcode uiview viewdidload viewdidappear
我试图向viewDidLoad和viewDidAppear添加动画,但它不起作用:
- (void)viewDidAppear:(BOOL)animated{
 [UIView beginAnimations:@"transition" context:NULL];
 [UIView setAnimationTransition:110 forView:self.view cache:YES];
 [UIView commitAnimations];
}
为什么?
jac*_*avo 24
我有同样的问题,我想我在这个问题上找到了解决方案.
当调用viewDidAppear时,你仍然看不到屏幕上的任何内容(尽管有名字),但你即将到来.然后,您可以使用performSelector:withDelay或NSTimer来启动动画.延迟只能为0.1,您的动画将在屏幕出现时播放.
- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    NSLog(@"View did appear!");
    [self performSelector:@selector(animationCode) withObject:nil afterDelay:0.1f];
}
- (void)animationCode {
    // you animation code
}
您没有告诉视图它应该动画到哪个状态,因此它不会执行任何操作。您需要在beginAnimations:context:和之间放置代码commitAnimations来更改视图的外观(例如,通过删除一个子视图并添加另一个子视图)。