我有一个在应用程序委托中制作的选项卡栏。通过调用一个按钮点击从标签栏加载的视图中的一个按钮,我打开帮助屏幕,但是在加载后出现一个急动作。为什么在使用此UIView动画块时会看到生涩的动画?
原谅我讲informally..I已经挑选我的大脑试图找出了这一点,在过去的几个小时..
-(void)flipToHelp {
HelpViewController *helpVariable = [[HelpViewController alloc] initWithNibName:@"HelpView" bundle:nil];
[self setHelpViewController:helpVariable];
[UIView beginAnimations:@"flipview" context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft
forView:_window cache:YES];
[_window removeFromSuperview];
[helpVariable release];
self.window.rootViewController = self.HelpViewController;
[UIView commitAnimations];
}
你为什么要调用'[_window removeFromSuperview]'?你不应该从窗口中删除标签栏控制器吗? – 2011-05-16 20:30:49
我试过,但我不断收到一个错误,使用“self.window = self.HelpViewController;” ...警告:语义问题:从'HelpViewController *'分配给'UIWindow *'的指针类型不兼容 – BlockReader 2011-05-17 00:52:03
我不确定重新分配rootViewController是否更改视图。如果是这样,所有你需要做的就是删除'[_window removeFromSuperview]'行。如果改变rootViewController是不够的,你可以这样做:'[self.tabBarController removeFromSuperview]; [self.window addSubview:self.HelpViewController.view];'。 – 2011-05-17 01:29:37