我有一个类似于 iPhone 和 iPad 上的联系人表单的动态表单。 一个联系人有“静态”信息,如姓氏、名字、地址……他也有“动态”信息,如 friend 、爱好等等……
所以我创建了一个 UITableView
,它由不同类型的单元格组成,例如 StaticInformationCell
、FriendCell
、HobbyCell
.每种类型的单元格都有一个或多个 UItextfield
关于它需要的信息。
它非常适用于 self 细胞验证。我的意思是,当用户编辑一个特定单元格的 UITextField
时,这个单元格可以判断该值是否有效,也可以显示或不显示 UITextField
中的概览。
我的问题是当用户提交表单时 UITableView
不知道整个表单(所有单元格)是否有效。我不知道 UITableView
如何“询问”每个单元格是否有效。
我尝试将创建的单元格存储在 NSMutableSet
中,并向每个单元格发送消息 isValid
。不幸的是,我不知道为什么有些单元格“在此重复”Set
:
<FriendEditCell: 0x8ddf9e0; baseClass = UITableViewCell; frame = (0 383; 768 70); alpha = 0; hidden = YES; autoresize = W; layer = <CALayer: 0x8db4010>>,
<FriendEditCell: 0x8dcfd80; baseClass = UITableViewCell; frame = (0 383; 768 70); autoresize = W; layer = <CALayer: 0x8d90920>>
我不能使用静态的 UITableView
,因为用户可以添加任意数量的 friend 。
您知道如何解决我的验证问题吗?
最佳答案
如果我正确理解了这个问题,但我并不完全确定我理解正确,我会子类化 UITableViewCell,并创建该类型的自定义单元格。对于该单元格,我将创建一个“验证”方法,根据您所说的“有效”单元格检查 uitextfield 的内容。如果单元格有效,此函数将返回 TRUE。提交表单时,我会遍历所有单元格并设置某种标志,如果其中一个“验证”返回错误并停止提交,则该标志会下降。
关于ios - 使用 UITableView 验证动态表单的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20971594/