Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ios中使用ImageView的非线性导航_Ios_Objective C_Ipad - Fatal编程技术网

ios中使用ImageView的非线性导航

ios中使用ImageView的非线性导航,ios,objective-c,ipad,Ios,Objective C,Ipad,我已经看过了ios中的各种导航控制器,但似乎没有一个能够实现我在下一个应用程序中想要的功能 有没有办法完全绕过导航控制器,根据显示的内容、按下的按钮或做出的手势,从一个viewcontroller跳到另一个viewcontroller 例如,如果我要以图形方式在3 x 3网格中设置九个视图控制器,并在每个视图上放置上、下、左、右滑动手势,然后使用“环绕连接”将每个视图连接到其上方、下方、左侧和右侧,我可以从一个视图导航到另一个视图,而无需导航控制器 我正在计划的应用程序也会做类似的事情。每个视图

我已经看过了ios中的各种导航控制器,但似乎没有一个能够实现我在下一个应用程序中想要的功能

有没有办法完全绕过导航控制器,根据显示的内容、按下的按钮或做出的手势,从一个viewcontroller跳到另一个viewcontroller

例如,如果我要以图形方式在3 x 3网格中设置九个视图控制器,并在每个视图上放置上、下、左、右滑动手势,然后使用“环绕连接”将每个视图连接到其上方、下方、左侧和右侧,我可以从一个视图导航到另一个视图,而无需导航控制器

我正在计划的应用程序也会做类似的事情。每个视图都有自己的手势/按钮/热点,这将使另一个视图脱颖而出。我在包括本网站在内的任何地方都很少看到视图之间的非层次或非线性导航


任何建议都将不胜感激。

当然可以。在iOS中,导航控制器只是在视图控制器之间导航的多种方式之一

您可以控制从按钮拖动到情节提要中的另一个场景,以创建自定义片段。如果选择一个模式段,则系统将在当前视图控制器的顶部添加新的视图控制器作为模式


请注意,您不能无休止地推送新的视图控制器。当你想回去的时候,你需要做一个解雇来摆脱之前的模式。或者,您应该能够设置一个展开序列,尽管我只使用了一次或两次,但在使用它们时仍然不可靠。

导航控制器也可以以非分层方式使用,就像您引用的示例中一样。在本例中,NavController仅将presentedViewController作为包装器保存并呈现它。完成后,您将导航回父VC。从那里你可以通过另一个导航控制器导航到另一个VC。因此,对于3x3示例,当用户在一个视图上滑动/手势时,启动包装在新NavVC中的VC。完成后,您将导航回父3x3视图。对于3x3网格中与每个视图相关联的每个手势,您都要重复上述操作。

我发现,可以通过编程在同一情节提要甚至其他情节提要中实例化和显示视图控制器,而无需使用导航控制器。非常感谢您提供上述答案,但这更适合我的需要。

但这不是模态“线性”,换句话说,我最终不必“返回”吗?假设我想从视图1到视图7,再到视图3,再到视图4,然后做一些完全不同的事情,永远不要“返回”到这些视图中的任何一个?如果我要从1到9对视图进行编号,你是说我必须从1到3,然后在我到5之前返回到1?我可以不直接从1到3再到5吗?你可以使用push VC5到同一个NavVC;从5开始,您可以通过弹出到所需的VC来决定返回的位置,或者返回到前一个3,或者返回到前一个1。请参见NavVC中的以下内容:@propertynonatomic,copy NSArray*ViewController和popToViewController:动画:非常感谢!这对数量不定的风投公司有效吗?是的。会的。将NavVC视为浏览器中的“浏览器历史记录”,您可以回溯到给定NavVC过去的任何VC。