更改Xcode故事板中视图控制器的列表顺序

时间:2012-09-25 14:51:22

标签: ios xcode xcode4 uistoryboard

我刚刚使用故事板开始我的第一个应用程序。我正在使用Xcode 4.5和iOS 6 SDK。我想知道如何更改文档大纲(故事板左侧的面板)中列出控制器的顺序。enter image description here

8 个答案:

答案 0 :(得分:60)

Xcode 10 中,您只需打开storyboard XML并将特定的“场景”移动到“scenes”标记下的适当位置。就是这样。该订单将与文件大纲相对应。

答案 1 :(得分:18)

在Xcode 5中,故事板“文档大纲”中列出的视图控制器/场景的顺序似乎是由故事板XML文件中的sceneID属性值的字母数字排序决定的。

从4.6升级到Xcode 5之后,Document Outline似乎以随机顺序列出了我的场景。我检查了Storyboard XML文件(右键单击storyboard文件 - > Open As - >源代码),但是场景的顺序是正确的。进一步调查后,我意识到sceneID属性值是问题。我找到了每个sceneID属性,并为该值添加了一个字母数字增加的前缀。例如,对于应出现在文档大纲中的第一个场景,我将其sceneID值加上“1a”,第二个“1b”,第三个“1c”等等。在为我的所有场景执行此操作后,他们在文档大纲中有一个正确的列表顺序。

我认为sceneID值可能仅用于唯一标识/排序目的,因此希望更改它们不会导致其他意外问题。但是我仍然能够在Interface Builder中使用故事板而没有问题,我的应用程序似乎正常工作。因此,如果这个问题像我一样让你感到恼火,那么在Apple给我们一个合适的解决方案之前你可能会考虑这个解决办法......一定要先做好备份!

答案 2 :(得分:10)

在“文档大纲”中,拖动橙色视图控制器图标。执行此操作时,您将看到灰色框之间出现蓝色水平插入点。放开,视图控制器的整个灰色组框将重新定位。

答案 3 :(得分:8)

至少对于Xcode 4.6,场景按照它们存储在storyboard xml中的顺序。

因此,您可以使用文本编辑器打开它并重新排序您喜欢的标记,然后启动Xcode。

答案 4 :(得分:4)

我不确定它对你来说是否仍然有意义。 从xcode 6.1开始,您可以右键单击故事板文件,选择“打开为...” - > “源代码”并更改视图控制器重新排列部分顺序的顺序。由于未知原因拖拉视图控制器图标,我无法移动它们,所以这是唯一适合我的方式。

答案 5 :(得分:3)

对于Xcode 5.1.1,您必须更改标记segue的顺序。打开storyboard作为source code(右键单击 - >打开为 - >源代码)

<segue destination="Bdn-Z8-Ql8" kind="relationship" relationship="viewControllers" id="0DS-1d-02F"/>
<segue destination="KY3-Z9-s1u" kind="relationship" relationship="viewControllers" id="u45-Ly-JkB"/>
<segue destination="k72-nP-MyV" kind="relationship" relationship="viewControllers" id="TAj-be-l8p"/>
<segue destination="gcA-x5-8Iw" kind="relationship" relationship="viewControllers" id="B7T-js-1Vs"/>

更改上述行的顺序将改变ViewControllers的顺序

答案 6 :(得分:0)

视图控制器似乎属于标签栏控制器,因此按钮的顺序决定了顺序而不是屏幕上视图控制器的位置。您应该能够拖放按钮。

答案 7 :(得分:0)

只需在第一个View Controller屏幕中拖放底部的图标即可。 Xcode 11.6