Iphone 使用UINavigationController实现工作流可用性的技术设计

Iphone 使用UINavigationController实现工作流可用性的技术设计,iphone,objective-c,xcode,Iphone,Objective C,Xcode,对于iOS开发来说,一个简单的技术设计问题是全新的。我正在工作的项目已经引导用户通过一组问题,最多20个。我想使用UINavigationController,通过导航栏中的后退按钮和下一步按钮,在可用性方面给人一种工作流的感觉——这是一项要求。但是,20个视图中的每个视图的设计都是相同的,当然,数据驱动的内容除外 从设计的角度来看,我会 使用20个单独的h和m类复制视图控制器20次,并在每个类之间使用push segue以提供工作流的感觉 复制视图控制器20次,但连接到相同的h和m类 每次用户

对于iOS开发来说,一个简单的技术设计问题是全新的。我正在工作的项目已经引导用户通过一组问题,最多20个。我想使用UINavigationController,通过导航栏中的后退按钮和下一步按钮,在可用性方面给人一种工作流的感觉——这是一项要求。但是,20个视图中的每个视图的设计都是相同的,当然,数据驱动的内容除外

从设计的角度来看,我会

  • 使用20个单独的h和m类复制视图控制器20次,并在每个类之间使用push segue以提供工作流的感觉
  • 复制视图控制器20次,但连接到相同的h和m类
  • 每次用户单击“上一步”或“下一步”时重新绘制视图,从而保留1个viewcontroller

  • 我已经看过几个使用xib文件的示例,但我希望通过最新版本的xcode和故事板实现这一点。

    最简单的方法是重用已经创建的内容。应用程序的视图(来自模态视图控制器)部分只需实现一次

    您所需要的只是一个简单的操作,允许用户在提供选项之间导航(本例中为20)

    在这种情况下,首选选项是

    3) 每次用户单击“上一步”或“下一步”时重新绘制视图,从而保留1个viewcontroller

    您所需要的只是使用适当的选择器更新内容(相当于重新绘制视图),例如

    - (IBAction)navigateToNextOption:(int)index;
    - (IBAction)navigateToPreviousOption:(int)index;
    
    您可能还希望根据索引处理验证,并提示用户选择正确的导航按钮

    一个简单的例子,如果选项为1000,也可能帮助您决定最佳方法


    干杯

    我建议使用单个viewcontroller,并在单击“下一步”和“上一步”按钮时显示类似于UINavigationController的动画行为。将此源代码用于Git


    更换箭头按钮,并将其放置在UIViewController的顶部。

    您迄今为止尝试过什么?