Ios 第一次进入应用程序时,在swift中使用UIPageViewController创建教程页面的首选方法是什么

Ios 第一次进入应用程序时,在swift中使用UIPageViewController创建教程页面的首选方法是什么,ios,swift,Ios,Swift,我对IOS界面设计比较陌生,目前面临的问题是: 我有一个应用程序希望在导航控制器之前有一个教程(UIPageViewController),导航控制器将是应用程序进入脚本的主控制器 现在,我想要实现的是让应用程序运行我的教程页面,第一次运行应用程序,然后进入NavigationController。如果不是第一次,用户将直接转到NavigationController 经过一些研究,我发现至少有两种方法: 完全在代码上编程UIPageViewController,然后在Appdelegate中,

我对IOS界面设计比较陌生,目前面临的问题是:

我有一个应用程序希望在导航控制器之前有一个教程(UIPageViewController),导航控制器将是应用程序进入脚本的主控制器

现在,我想要实现的是让应用程序运行我的教程页面,第一次运行应用程序,然后进入NavigationController。如果不是第一次,用户将直接转到NavigationController

经过一些研究,我发现至少有两种方法:

  • 完全在代码上编程UIPageViewController,然后在Appdelegate中,使用if-else循环完成此操作
  • 将UIPageViewController插入情节提要并执行此操作
  • 到目前为止,我可以找到两种方法。然而,第二,我找不到处理“完全跳过教程页面”的最佳方法。或者可能有更好的方法。我希望这个应用程序更加优化,我想知道对于IOS专业人士来说,通常的做法是什么

    谢谢大家!


    (p.s.如果问题是重复的或不清楚的,请留下我的意见。再次感谢!如果可以显示github演示的某些链接,则可能会有额外的好处。)

    我通常这样做的方式如下:

  • 将教程内容放在单独的故事板中
  • 在主情节提要的初始视图控制器中,选中 NSUserDefault中的专用变量用于查看用户是否运行过 之前的应用程序
  • 如果不是,则以编程方式加载的初始视图控制器 教程情节提要并演示它
  • 这样,主情节提要就不会加载一堆只使用一次的视图控制器,并且只需编写最少的转换代码

    --编辑--

    以下是对这个问题的快速回答:


    我通常做这类事情的方式如下:

  • 将教程内容放在单独的故事板中
  • 在主情节提要的初始视图控制器中,选中 NSUserDefault中的专用变量用于查看用户是否运行过 之前的应用程序
  • 如果不是,则以编程方式加载的初始视图控制器 教程情节提要并演示它
  • 这样,主情节提要就不会加载一堆只使用一次的视图控制器,并且只需编写最少的转换代码

    --编辑--

    以下是对这个问题的快速回答:


    这个链接有这样的示例项目,但它是用Objective-C编写的。

    此链接有相应的示例项目,但它是用Objective-C编写的。

    你知道一些关于独立故事板的好教程吗?包括从viewcontroller调用它,以及以viewcontroller为目标。这是我第一次遇到UI。谢谢我添加了一些示例代码。将其包装在一个if块中,该块检查
    NSUserDefault
    的值。好吧,在实现之后,我发现用导航控制器按您的方式不能简单地做到这一点……我想不出上面的代码在导航控制器中不起作用的任何原因。你有什么问题?与导航控制器相关的东西,不平衡调用,已经解决了:)你知道一些关于独立故事板的好教程吗?包括从viewcontroller调用它,以及以viewcontroller为目标。这是我第一次遇到UI。谢谢我添加了一些示例代码。将其包装在一个if块中,该块检查
    NSUserDefault
    的值。好吧,在实现之后,我发现用导航控制器按您的方式不能简单地做到这一点……我想不出上面的代码在导航控制器中不起作用的任何原因。您有什么问题?导航控制器相关的东西,不平衡呼叫,已经修复:)
    let storyboard = UIStoryboard(name: "Tutorial", bundle: nil)
    let viewController = storyboard.instantiateInitialViewController()
    presentViewController(viewController, animated: true, completion: nil)