1

几周前我刚刚开始在 iOS 上编程,如果这些问题真的很基础,很抱歉。

小故事:我正在设计一个需要捕获大量客户数据的 CRM 应用程序。我正在尝试模拟使用选项卡式表单的桌面应用程序。在 iPad 上实现此功能的最佳方式(技术上和视觉上)是什么?

我需要以下内容:

  • 每个选项卡(其中 5-6 个)包含许多不同类型的字段(带有标签),我喜欢使用专门的控件(例如 uidatepicker、uipickerview/uisegmentedcontrol、textarea+stepper、switch 等),而不是只是原始文本字段
  • 理想情况下(实际上这是一个非常关键的要求)必须以编程方式生成 UI,这样模型的更改就不需要手动调整 IB 中的表单
  • 能够在标签之间切换而不会丢失当前标签中已经输入的数据。

到目前为止,我的进步,重新。整体切换机制:

  • 我最初认为将选项卡切换器实现为分段控件,在不同视图之间切换,如 Matthias 的评论中所述。然而,按需实例化 VC 意味着丢失已经输入的数据(除非我会实现某种缓存,但我希望有更简单的东西)。

  • 我现在正在考虑通过以编程方式显示/隐藏它们来切换视图的更简单的方法,但我担心这可能会占用太多内存(我正在查看总共可能超过 100 个字段)。

至于在每个选项卡中表示表单字段:

  • 我可以在 IB 中手动布置它们(或作为 tableview 中的静态单元格),但我真的不想这样做,因为这基本上意味着 UI 是硬编码的并且难以更改
  • 我更喜欢以编程方式创建界面,但我不知道处理不同的字段类型、附加弹出窗口(例如用于日期字段的日期选择器)、处理字段事件等有多容易。

如果有人有任何我可以使用的指针,我将不胜感激。

TIA,卢锡安

4

1 回答 1

0

我认为您使用一个视图控制器走在正确的轨道上,拥有一个视图,然后具有您根据需要隐藏/显示的子视图。

宽广地:

  • 一个顶级 UIView,包含选项卡按钮(为此使用普通 UIButtons),并拥有多个 UIViews
  • 每个 UIView 都有每个“选项卡”所需的字段

然后切换选项卡,只需隐藏一个视图并显示另一个视图,一切都会好起来的。

我不会担心内存消耗——iPad 的内存足以容纳 100 多个 UI 控件,因为我不希望你会做很多自定义图形。如果您确实内存不足,您始终可以根据需要为每个选项卡创建控件 - 切换选项卡需要更长的时间,但会起作用。

至于以编程方式布局:这是完全可能的。创建 iPad UI 时有 2 个基本选项 - 使用 XIB 文件(使用 XCode 中的图形设计器设计),或者在代码中进行,通常在-viewWillAppear-viewDidLoad. 所有相关的事情都可以完成 - 查看每个 UI 控件的文档以了解如何配置它。

于 2012-05-25T14:50:06.390 回答