我正在尝试翻转导航控制器内的viewcontroller,但到目前为止收效甚微,我尝试了数以千计的解决方案,但都不适合。我想像这样翻转控制器:
按按钮进入地图:http://i39.tinypic.com/fabul3.jpg
按相同按钮返回更改图像:http://i40.tinypic.com/2qa1y0h.jpg
我需要为segue保留故事板的系数。 你有任何想法或如何做到这一点的例子吗?
答案 0 :(得分:2)
您可能会发现转换视图本身更容易,而不是翻转视图控制器。有一种翻转视图的标准方法,这个问题包括在内:
How to implement flip transition effect for UIView
或者,您可以尝试通过自定义segue转换视图控制器本身,但我怀疑在UIView级别处理翻转会更容易。
答案 1 :(得分:1)
您可以在Storyboard中创建一个包含容器视图的新UIViewController,并将列车网络地图视图控制器分配给容器视图。
然后在代码中,您可以从故事板中实例化地图视图控制器:
self.mapViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MapViewController"];
在容器视图上阅读更多内容以了解以下几行,假设networkMapViewController是您想要翻转到mapViewController的初始视图控制器:
[self.networkMapViewConroller willMoveToParentViewController:nil];
[self addChildViewController:self.mapViewController];
[self.mapViewController didMoveToParentViewController];
然后你可以使用视图控制器方法transitionFromViewController:toViewController:duration:options:animations:completion:
[self transitionFromViewController:self.networkMapViewController
toViewController:self.mapViewController
duration:.5
options:UIViewAnimationOptionCurveEaseInOut|UIViewAnimationOptionTransitionFlipFromRight
animations:nil
completion:^(BOOL finished) {
[self.networkMapViewController removeFromParentViewController];
}];
您需要编写类似的代码行,以便从地图视图控制器更改回networkMapViewController。