如何为 ViewController segues 设置 if else 语句?

Posted

技术标签:

【中文标题】如何为 ViewController segues 设置 if else 语句?【英文标题】:How to set if else statement for ViewController segues? 【发布时间】:2018-02-21 19:23:27 【问题描述】:

如果这是一个简单的问题,我深表歉意,但我是学习 Swift 的新手。我目前正在开发一个简单的应用程序,您可以在其中对一天中的某些类别(例如情绪、社交、睡眠)进行评分。用户可以启用和禁用某些类别。当用户去记录新的一天时,他们进入一个导航控制器,在那里他们将为给定类别选择一个评级,然后点击右上角的箭头前进到下一个类别,直到每个类别都被评级. (见下图)

有没有办法让我在每个前面的 ViewController 之后对哪个 ViewController 进行编程?例如,如果用户禁用了心情类别,则在记录新的一天时不应向用户展示他们的心情类别。

提前感谢大家!

【问题讨论】:

【参考方案1】:

这在故事板中是不可能的。但是,您可以使用混合方法:设计单独的控制器,但从您的代码中触发导航。

要从 StoryBoard 中创建 VC 的实例,请使用

func instantiateViewController(withIdentifier identifier: String) -> UIViewController.

您必须为控制器分配故事板 ID。

更多文档请访问Apple。

【讨论】:

【参考方案2】:

您可以制作一个“主”情节提要并为所有评级控制器添加序列。然后将逻辑添加到“主”控制器,该控制器每天都会调用不同的序列,而没有动画。

【讨论】:

以上是关于如何为 ViewController segues 设置 if else 语句?的主要内容,如果未能解决你的问题,请参考以下文章

如何为 didSelectRowAtIndexPath 中的选定笔尖单元触发某些 segue

如何为 TWTR 时间轴 ViewController 设置单元格背景颜色?

如何为 SimplePing 显示警报?

segue 如何创建目标 ViewController?

如何为 Swift 3 创建第一个视图

按下时 Segue 不会显示 ViewController