Swift:根据情况显示不同的视图

时间:2020-08-03 14:13:59

标签: ios swift

我正在构建一个向用户显示不断变化的任务的应用程序(计划每天显示一个任务,而此时它只是在加载时显示一个随机任务)。

流程:用户登录到应用程序,并定向到显示日常任务的主屏幕。 完成任务后,单击“标记完成”按钮,并以模态显示成功屏幕。 当用户关闭成功屏幕时,他返回主屏幕,当前仍显示日常任务。

我想更改主屏幕上的视图,以便从成功屏幕返回时,用户将看到一个不同的视图,而不是显示以前显示的任务(例如,一条消息“完成了日常任务”。

新任务只能在第二天(或任何其他情况)显示。

逻辑是:

如果dailyActivityCompleted = false>显示每日活动视图

如果dailyActivityCompleted = true>显示“已完成”视图

有条件确定在同一UIViewController中显示哪些内容的最佳方法是什么?

我是Swift的新手,很抱歉,如果这是一个基本问题,我进行了搜索,但找不到解决方法...

谢谢!

1 个答案:

答案 0 :(得分:0)

有条件确定在同一UIViewController中显示哪些内容的最佳方法是什么?

最好的方法是维护一个管理应用程序状态的数据模型,包括任务列表,当前任务,完成状态等。一旦有了这些,视图控制器的工作就是确保其视图反映模型,或至少模型显示的部分。每当发生任何可能改变模型状态的事情时,您都可以让视图控制器检查模型并更新自身。例如,如果使用segue显示成功视图控制器,则可以实现unwindFromSegue(segue:)来调用某种方法来检查模型并更新视图。

相关问题