【发布时间】:2011-04-27 17:16:07
【问题描述】:
我在表格视图单元格中有一个带有 UITextfield 的 UITableViewController。如果我滚动表格视图,用户在文本字段中输入的数据就会消失。我试图将文本字段数据添加到 NSMutableArray 但它仍然不起作用。请帮忙。
【问题讨论】:
-
没有代码是很难解决的。试着给一些代码sn-ps过来。
标签: ios uitableview scroll
我在表格视图单元格中有一个带有 UITextfield 的 UITableViewController。如果我滚动表格视图,用户在文本字段中输入的数据就会消失。我试图将文本字段数据添加到 NSMutableArray 但它仍然不起作用。请帮忙。
【问题讨论】:
标签: ios uitableview scroll
当cellForRowAtIndexPath: 被调用时,你返回的单元格必须用你想显示的任何数据完全填充。因此,如果单元格包含 UITextfield,则需要将其 text 属性设置为数据中该行的正确值。
当表格单元格从屏幕顶部或底部消失时,UITableViewCell 本身就可以重新使用。 (当您滚动时,单元格消失,并出现新的单元格,但 UITableView 类正在重新使用 UITableViewCell 对象。)在cellForRowAtIndexPath: 中,当您使用缓存单元格时,您必须确保设置您想要的所有内容显示有问题的行,否则您可能会在表格中看到一些奇怪的行为。
这有帮助吗?
编辑:
这是cellForRowAtIndexPath: 中使用的典型模式的示例。注意dequeueReusableCellWithIdentifier: 的使用。该方法返回一个先前分配但未使用的 UITableViewCell,如果有的话。进一步注意,如果没有返回缓存的单元格,代码将创建一个新的单元格,并设置它(使用与任何可能特定于行的内容无关的内容)。之后,您可以根据需要为相关行设置单元格。
查看文档以获取有关这些方法的详细信息。 Apple 和其他地方提供了很多关于如何实现 tableViews 的示例。
【讨论】: