0

如果我将 UITableView 作为 UIViewController 的属性,并且我正在使用[tableView cellForRowAtIndexPath:indexPath].

在一个方法调用上,我是否应该期望看到多个调用:

- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

我的每个 UITableViewCell 都有一个 UITextField 我试图访问其文本数据。

这就是我正在做的事情:

for (int section = 0; ix < countOfSections; ++section)
{
    NSInteger countOfRowsInSection = // attained
    for (int row = 0; row < countOfRowsInSection; ++row)
    {
        NSIndexPath *indexPath = [NSIndexPath indexPathForRow:row inSection:section];

        // the follow call seems to elicit multiple invocations 
        // on my table delegate's
        // - (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

        UITableViewCell *cell = [self.tableview cellForRowAtIndexPath:indexPath];

        // Access some custom data
    }
}

有没有更好的方法来访问所有部分和行的 UITextField 每个 UITableViewCell 中存储的所有数据?

4

1 回答 1

1

您真的不应该尝试使用视图来存储数据。无论您用作表的数据源,都应该有一个对象数组(或其他结构),其中包含在tableView:cellForRowAtIndexPath:调用时为单元格提供内容的数据。

If you need other access to that information, you should be getting it directly from the data structure rather than the display.

于 2012-08-08T18:00:26.343 回答