我对这个东西还比较陌生。这个程序只是我的第二个。UITabBarController - 如何动画简单开关?
我有一个TabBarController,有意见之间切换两种方式:
方法1:使用Tab栏图标。我提供了必要的代理回调。这是这样的:
/***************************************************************\**
\brief This animates the view transitions, and also sets up anything
that needs doing between views.
*****************************************************************/
- (BOOL)tabBarController:(UITabBarController *)inTabBarController
shouldSelectViewController:(UIViewController *)inViewController
{
BOOL ret = NO;
// Need to have all of these to work.
if (inTabBarController && [inTabBarController view] && inViewController && [inViewController view])
{
UIView *srcView = [[inTabBarController selectedViewController] view];
UIView *dstView = [inViewController view];
if (srcView != dstView)
{
if (srcView == [prefsController view])
{
[UIView transitionFromView:srcView
toView:dstView
duration:0.25
options:UIViewAnimationOptionTransitionCurlDown
completion:nil];
}
else if (dstView == [prefsController view])
{
[UIView transitionFromView:srcView
toView:dstView
duration:0.25
options:UIViewAnimationOptionTransitionCurlUp
completion:nil];
}
else if (srcView == [listSearchController view] && dstView == [mapSearchController view])
{
[UIView transitionFromView:srcView
toView:dstView
duration:0.25
options:UIViewAnimationOptionTransitionFlipFromLeft
completion:nil];
}
else if (dstView == [listSearchController view] && srcView == [mapSearchController view])
{
[UIView transitionFromView:srcView
toView:dstView
duration:0.25
options:UIViewAnimationOptionTransitionFlipFromRight
completion:nil];
}
ret = YES;
}
}
return ret;
}
伟大的作品。
方法2:抢挥笔,并触发转换这种方式,就像这样:
/***************************************************************\**
\brief Gesture Callback -Swipes from the List View to the Map View
*****************************************************************/
- (IBAction)swipeFromList:(UIGestureRecognizer *)sender
{
[tabBarController setSelectedIndex:1];
}
这里的问题是,我不能到工作的过渡。如果我的转换代码添加到刷卡处理,像这样:
/***************************************************************\**
\brief Gesture Callback -Swipes from the List View to the Map View
*****************************************************************/
- (IBAction)swipeFromList:(UIGestureRecognizer *)sender
{
[UIView transitionFromView:[listSearchController view]
toView:[mapSearchController view]
duration:0.25
options:UIViewAnimationOptionTransitionFlipFromLeft
completion:nil];
[tabBarController setSelectedIndex:1];
}
它的工作原理是第一次,但出现眼睛蛇在随后的那张。
我敢肯定,我在这里做了一些基本的,微笑的错误,并且正在寻找线索。
线索,有人吗?
谢谢!
一个关于这个解决方案真的很烦人的事情是,它呈现分析机构几乎一文不值,因为在每一个这些分析尖叫。 –