将segue从视图控制器推送到自身不会设置动画

时间:2013-10-28 00:27:04

标签: ios objective-c xcode uiviewcontroller segue

我有一个我正在编程的棋盘游戏应用程序,其中涉及玩家以顺时针方向向其他玩家提出相同的问题。由于所有玩家的问题都是相同的,在一个玩家回答问题之后我想要再次呈现相同视图控制器(及其视图)的另一个实例(在视图中进行一些微小的更改以反映不同玩家的事实)被问到同样的问题)。

所以这就是问题:当我以编程方式尝试使用以下代码从“PlayerAnswerToSuggestionVC”视图控制器的第一个实例推送类型为“PlayerAnswerToSuggestionVC”的新视图控制器时,没有动画:

        PlayerAnswerToSuggestionVC *patsvc=[self.storyboard instantiateViewControllerWithIdentifier:@"PlayerAnswerVC"];
        [self.navigationController pushViewController:patsvc animated:YES];

新的视图控制器确实出现但是没有转换的动画,尽管我在“pushViewController:animated:”方法中声明我确实想要动画。当我尝试使用来自第一个视图控制器的UIButton的storyboard segue来实例化相同类型的视图控制器时,会发生同样的事情。出现新的视图控制器,但没有任何推送过渡动画。

我意识到这可能是一个预期的功能,并且当从一个视图控制器转到另一个相同类型的控制器时,通常可能不想要动画。但在我的情况下,我确实想要一个视觉推送过渡,以反映游戏问题现在针对不同的玩家的事实。有关实现从一个视图控制器的实例到另一个相同类型的视图控制器的动画推送过渡的简单方法的想法吗?

*发现的其他信息:在使用该应用程序之后,我必须修改上面的一些评论。似乎推送转换不具有动画效果,但稍后在游戏中同一视图控制器类的另一个实例中的相同推送转换具有动画效果。不过,我仍然不知道为什么推送转换不会在第一次尝试时动画。还在寻找一种模式,试图了解正在发生的事情......

0 个答案:

没有答案