设置:表格有1个自定义单元格。此单元格有1个文本框。在每个文本框中输入数字。tableView有5行(使用此单元格)。如果我更改任何一个单元格中的数字,则需要更新所有单元格,我只需调用
问题:我点击任何一个文本框并更改数字。然后,我单击另一个文本框以更改其值。首先调用
我无法直接更新单元格,因为它们是自定义单元格,并且该值在该类内进行更改。我无法从自定义单元格类中更新所有单元格。
对于非母语英语的人来说,这是一个难以用书面语解释的问题。如果您理解这个问题,将不胜感激 :)。
使用Xcode 7.1和Swift。谢谢。
tableView.reloadData()
即可。文本框中的更改使用editingDidEnd
事件处理。问题:我点击任何一个文本框并更改数字。然后,我单击另一个文本框以更改其值。首先调用
editingDidEnd
,重新计算所有值,并调用tableView.reloadData
。现在,由于表已重新加载,第二个文本框的点击被忽略了。我无法直接更新单元格,因为它们是自定义单元格,并且该值在该类内进行更改。我无法从自定义单元格类中更新所有单元格。
对于非母语英语的人来说,这是一个难以用书面语解释的问题。如果您理解这个问题,将不胜感激 :)。
使用Xcode 7.1和Swift。谢谢。
didSelectRowAtIndexPath
方法。让我试一下并回复您。感谢您的建议。 - oyalhibecomeFirstResponder
可能太早了。文本字段需要在视图层次结构中才能正常工作。您需要等到viewDidLayoutSubviews
或tableView(_: willDisplay: forRow:)
被调用,以使单元格中的某些内容成为第一个响应者。 - Craig Siemens