【发布时间】:2013-07-20 12:26:16
【问题描述】:
我刚刚将我的应用程序从 TabView 驱动更改为 CollectionView 驱动,因为我的应用程序中有太多部分无法用于 TabView。当您启动应用程序时,您会看到 CollectionView 中的多个项目,选择这些项目中的任何一个都会将您带到应用程序的相关部分。
在 XCode 中,集合视图存在于自己的故事板中,应用程序的每个部分都有自己的故事板。
在CollectionView的didSelectItemAtIndexPath中,我启动相关的右舷如下;
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"relevant_storyboard" bundle:nil];
UIViewController* vc = [storyboard instantiateInitialViewController];
[self presentViewController:vc animated:YES completion:nil];
现在,没有一个内置的过渡动画真的适合从 CollectionView 启动,所以我真的很想要自定义效果,例如放大。但是,我正在努力寻找任何适合我的体面示例创建任何类型的自定义过渡。我试过[UIView transitionFromView],但我认为这不适合在 UIViewControllers 之间转换。我已经尝试过transitionFromViewController:toViewController:,但我认为我的视图层次结构设置不正确。我也试过使用 CATransition 没有成功。
我曾考虑过使用自定义 segue 来实现,但是由于我的 CollectionView 位于它自己的故事板中,并且我的应用程序的每个部分都有单独的故事板,所以我不知道该怎么做。至少在没有将应用程序的所有部分都放在一个故事板中的情况下,这会使故事板变得庞大且难以管理。
那么,谁能给我任何代码示例或指示我如何解决这个问题?
【问题讨论】:
-
我认为我为此苦苦挣扎的原因是因为我并不真正了解 UIViewController 的遏制。我想我需要先阅读一下。我也在尝试观看解释这一点的 WWDC 2011 session 102 视频,但由于黑客攻击,开发网站自周四以来一直处于关闭状态。在我下载的所有 WWDC 视频中,这不是其中之一。叹息。
标签: ios uiviewcontroller uiviewanimationtransition