InteractivePopGestureRecognizer无法正确设置动画

时间:2015-08-22 07:36:45

标签: ios objective-c iphone uitableview uinavigationcontroller

我的UIViewController s结构比较复杂,所以interactivePopGesturerecognizer表现得很奇怪。

首先,我的VC层次结构如下:我UINavigationController AppDelegate VC中有一个rootViewController。然后我推动一个VC服务器作为5个VC在同一级别上的占位符,即那些VC是兄弟姐妹,我在无限水平滚动系统中用作VC。我将他们的view添加到VC中。现在,这5个VC中的每一个都有UITableView,在按下行之后,这些表会在堆栈上推送VC的详细信息。详细信息VC被推送到堆栈时正好被动画了。即使我在详细信息VC上按下按钮,我也会在后台看到父UITableView动画。当我尝试刷细节VC以将其弹出堆栈时出现问题。然后我明白了,背景中没有UITableView动画。There's no UITableView! 到目前为止,我已经做到了这一点: - 在我的AppDelegate.m我启用了互动式弹出式手势navigation.interactivePopGestureRecognizer.enabled = YES;

  • 在我的详细信息VC中设置了委托self.navigationController.interactivePopGestureRecognizer.delegate = self;

当动画结束时,即细节VC从屏幕上移开时,我的父VC与桌子神奇地显示出来。如果按下按钮,则不会发生这种情况,在这种情况下,UITableView从左侧动画并保持原位。

我认为,因为我在滚动到另一个UINavigationController之后遇到水平滚动UITableView的情况会失去它的位置,所以父表就在其他地方。但是当我按下后退按钮时,我可以看到左边的动画表?

我还尝试通过推送将显示在屏幕上的当前VC的UITableView显式添加到导航堆栈,但问题出现在我尝试弹出堆栈并再次显示它时,它仍然不可见。< / p>

我不想拥有多个UINavigationController因为当我在UIScrollView内滑动它们时,我希望我的条形图能够固定到位。

所以,主要的问题是:如何使用interactivePopGestureRecoginzer获得相同的视觉行为,因为我得到了免费的后退按钮(动画的父UITableView),考虑到我有5个兄弟VC的事实不是导航堆栈的一部分,而只是将它们的视图添加到导航堆栈上的父VC?

谢谢!

0 个答案:

没有答案