设计表单布局的最佳方法是啥[关闭]

Posted

技术标签:

【中文标题】设计表单布局的最佳方法是啥[关闭]【英文标题】:What is the best way to design a form layout [closed]设计表单布局的最佳方法是什么[关闭] 【发布时间】:2017-10-18 16:52:07 【问题描述】:

设计表单布局的最佳方法是什么,我尝试过使用静态 UITableView,但我不知道当我有很多单元格时这是否是一个好习惯,如果我使用原型单元格,我很难做到与细胞内的元素相互作用。 其他形式是不使用 UITableView 只使用一个 UIScrollView,但我不知道哪个是最好的形式。 简而言之,设计表单布局最常用的方法是什么?

编辑:我需要实现如图所示的目标。

EDIT2:如果 CustomCell 内部有一个选取器视图,最好是来自 UIPickerView 的相同单元格委托,或者它应该是来自选取器视图的委托视图控制器?

现在我的 CustomCell 委托来自 UIPickerView 并且选项字符串数组和协议方法在该类中,可以吗?在这种情况下,当数组由自定义对象而不是字符串组成时,我该怎么办,例如,我有一个 Persons 数组,我需要在 pickerview 中显示人名,但我需要返回到 viewcontroller 人的年龄。在这种情况下,我必须创建其他自定义单元格来管理该数组类型(以及另一个不同的单元格,只要我需要它来处理不同类型的数组)?或者有什么方法可以统一它以避免创建许多不同的细胞类?。

【问题讨论】:

【参考方案1】:

这里最好的方法还是使用 UITableView。您可以设计自己的自定义单元格,以便在将来更改表单时提供更好的灵活性。

如果单元格具有相似类型的元素,并且您希望减少自动布局的工作量,您当然可以按照 Donovan 的建议在您正在设计的自定义单元格中使用 UIStackView。

使用 UITableView 的主要原因是它在获取特定行的 indexPath 方面为您提供了极大的灵活性。即使表单在需要保留的行数方面有所增加,您也不需要向其添加单独的 UIScrollView。

如果某些行的设计发生变化,而其他行的设计仍然相同,您仍然可以使用自定义单元格并将不同的单元格标识符放入新单元格,并使用“dequeueReusableCellWithIdentifier”并合并新设计。

希望这会有所帮助!

【讨论】:

这就是我正在做的!所以,我有另一个问题,我编辑了这个问题,请再检查一次。谢谢!!!! 我没有完全理解它,但希望它类似于这样的东西:***.com/questions/39494594/… 另外,就名称数组而言,选择器视图但返回的值是年龄数组,不要'对你来说,轮流使用字典会容易得多。使用字典将降低复杂性,您可以根据键值对获取所需的任何值。 不客气!快乐编码:)【参考方案2】:

当您向某种类型的用户显示数据时,通常会使用表格视图。对于您的情况,如何尝试 UIStackView。 Here 是帮助您入门的指南。

【讨论】:

@MartinRegas:您是否需要表单是动态的(经常更改,或者为不同的用户提供不同的字段等),还是表单总是具有相同的字段? 谢谢,表格应该是动态的,我更新了问题。

以上是关于设计表单布局的最佳方法是啥[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

为 Google Android 设计应用程序的最佳 UI Java 标记语言是啥? [关闭]

防止用户在后台处理时单击表单上的任何内容的最佳方法是啥? [关闭]

保持从文件中读取的字符串值列表的最佳java方法是啥[关闭]

创建核心数据模型设计的最佳方法是啥?

设计数据库以有效搜索特定列的最佳方法是啥?

设计生成所有 n 位数字组合的递归函数的最佳方法是啥?