2009-07-01 75 views
0

以下代码产生标准动画时,当用户选择sdk3.0到2.2,0. sdk3.0设备上的标签它不。我仍在编译2.0或2.2 sdk,但运行在运行3.0版本OS的设备上。 descrepcincies 代码:iPhone SDK2.0 vs SDK3.0差异

 
- (void)tabBarController:(UITabBarController *)controller didSelectViewController:(UIViewController *)viewController 
{ 
    [UIView beginAnimations:@"someAnimation" context:nil]; 
    [UIView setAnimationDuration:1.0]; 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:[[viewController view] superview] cache:YES]; 
    [UIView commitAnimations]; 
} 

有谁知道如何在3.0做到这一点? thanx! thanx! - 饼干

回答

1

可能发生的是错误的观点是动画。尝试动画制表控制器本身:

- (void)tabBarController:(UITabBarController *)controller didSelectViewController:(UIViewController *)viewController 
{ 
    [UIView beginAnimations:@"someAnimation" context:nil]; 
    [UIView setAnimationDuration:1.0f]; 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:[controller view] cache:YES]; 
    [UIView commitAnimations]; 
} 

然后可能试图从那里找到适当的子视图。

+0

这是一个很好的调用,它不会做我想要的东西,但它的“好”够用(翻转整个屏幕,而不仅仅是内部视图),但在3.0硬件和2.0硬件意味着,对我来说足够好。:-) – Tzur 2009-07-01 15:46:05