在StoryBoard中重新排列标签栏控制器顺序

时间:2012-09-30 16:01:58

标签: ios xcode

在我的应用程序iPhone应用程序中,我有一个标签栏控制器,与4个不同的表视图控制器有4个关系。有没有办法以图形方式重新排列StoryBoard中关系的顺序?我找不到办法做到这一点,我相信我一定会错过一些东西!

19 个答案:

答案 0 :(得分:226)

在4.5中添加Controller后保存故事板,切换到另一个文件,然后返回到Storyboard,标签拖动应该再次起作用。

答案 1 :(得分:114)

您可以通过拖放标签栏控制器中的图标来重新排列订单

答案 2 :(得分:15)

我无法使用XCode 4.6(带有任何提到的组合)拖放。 我已经解决了它在“源代码”模式下打开故事主题,找到 tabBarController 并重新排列 seque 标记。

答案 3 :(得分:12)

我知道OP正在使用Xcode界面构建器并要求以图形方式执行此操作,但对于使用Xamarin iOS Designer的开发人员,这是我使用的解决方法。

在文本编辑器中打开.storyboard文件或使用Xcode,右键单击Project Navigator中的storyboard项,然后选择 Open As 源代码。在故事板中,XML找到<tabBarController ...>节点。然后我重新排列<connections>部分中的segues的顺序:

<connections>
    <segue destination="274" kind="relationship" relationship="viewControllers" id="286"/>
    <segue id="943" destination="910" kind="relationship" relationship="viewControllers"/>
    <segue destination="147" kind="relationship" relationship="viewControllers" id="159"/>
</connections>

在XML中搜索destination=属性值,以确定segue元素指向哪个视图控制器。

答案 4 :(得分:9)

如评论中所述,拖拽和放大添加导航控制器后,drop当前不起作用(Xcode 4.5)。但是,添加控制器后重新启动Xcode 似乎变得拖累&amp;再次放下工作。

答案 5 :(得分:9)

只需拖放标签栏中的标签图标即可。

即。属于选项卡栏控制器的主选项卡栏。

HTH

::编辑::所以这似乎不起作用......我确定它曾经用过。

无论如何,我找到的最简单的方法是删除标签并按照您希望它们显示的顺序添加它们。

希望这有帮助。

答案 6 :(得分:8)

SHIFT + DRAG 可在Xcode 10.0上使用

答案 7 :(得分:7)

如果你打开故事板作为'源代码视图'然后关闭它,打开它作为IB视图它似乎修复了错误..

答案 8 :(得分:7)

添加每个人提供的拖放方法。我发布了这个作为答案,以便我可以包含图像。试过Xcode 7.3

如果您使用自定义tab bar item,即使Tab Bar Controller场景显示灰色条,您仍然可以拖放以重新排序,条形项目仍然存在。当您的所有酒吧项目都是自定义项目

时,这一点尤其不起眼

enter image description here description

答案 9 :(得分:4)

我使用XCode 5.1开发iOS 7.1,我发现以下方法可用于重新排列标签栏控制器中的标签。

要重新排列选项卡栏控制器中的选项卡,请将选项卡栏控制器中的segue删除到子视图控制器。然后按您希望选项卡的顺序重新绘制segue。到&#34;重新绘制&#34;我的意思是你控制从Tab Bar Controller到子视图控制器的拖动并选择Relationship Segue(在列表的底部)=&gt;查看控制器。

答案 10 :(得分:3)

您可以确保主故事板中的选项卡控制器停靠选项设置为“第一响应者”,这为我解决了这个问题!

答案 11 :(得分:3)

添加导航控制器后,我遇到了同样的问题。

修复:关闭故事板(Ctrl + Cmd + W)并执行干净的构建文件夹(Option + Cmd + Shift + K)和常规清理(Cmd + Shift + K)。重新打开故事板,您将能够再次拖动项目。

答案 12 :(得分:2)

XCODE 10.1:缩放故事板。只需拖动选项卡项目。 (别无选择)

答案 13 :(得分:2)

您可以将标签栏项目拖放到您想要的位置,如下图

enter image description here

答案 14 :(得分:1)

同样的事情在xCode 4.6中。我最初是关注beginning storyboards in ios的教程 在TabBarController上切换项目时,我无法更改顺序。我试图保存它 - 没有用;然而,一旦我关闭XCode并再次打开 - 它就行了。

答案 15 :(得分:1)

控制+拖动故事板中TabBarController中的项目并重新排列到所需位置。

答案 16 :(得分:0)

我也在关注故事板的raywenderlich教程,并意识到在添加标签控制器之后我无法通过拖动来重新排列标签。好吧,显然它只是xcode中的一些错误。所以只需退出xcode,重启它,这次你就可以拖动标签了。

答案 17 :(得分:0)

对我来说,拖动在XCode 7.3.1中无效。重新启动XCode没有帮助。上述解决方案都不适合我。

对我有什么帮助:我删除了与第二个项目的关系,然后从该项目中拖动到Tab键控制器并创建另一个关系。它现在自动排在第二位。

答案 18 :(得分:0)

使用标签栏删除所有的视图控制器序列。您首先需要先找到viewcontroller,然后再使用tabbar连接另一个viewcontroller。

无需重新启动xcode,也无需清除更改中的源代码文件。