0

我正在尝试使用 NSMutableArray 来构建我的 tableview 的数据源。NSMutableArray 为空。

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{

    return [self.ingredientsArray count];

}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    // Configure the cell...
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    cell.textLabel.text = [self.ingredientsArray objectAtIndex:indexPath.row];

    return cell;
}

我有一个“添加”按钮,因此用户可以在文本字段中输入他们的成分,并将其添加到数组中。加载数组没有任何问题。cell.textLabel.text = [self.ingredientsArray objectAtIndex:indexPath.row]; 有问题 但我不能把手指放在它上面。我在网站上查看过类似问题的几个答案,但它们似乎不起作用。我尝试将 numbersinrow: 方法更改为一个值,但应用程序无法编译。

然后我在视图中添加了一个对象到 NSMutablearray 确实加载了。将 numberOfRowsinSection: 方法更改为 1,并且在 cellForRowAtIndexPath: 中保持不变,我能够看到我输入的测试字符串。但这不是我想要的。

我希望用户在文本字段中输入一个字符串(成分),并将其显示在下面的 tableview 中。现在,当我向 NSMutableArray 添加字符串时,它们不会显示在 tableview 中,只有一个测试字符串存在。它们被正确添加,因为我已经对其进行了 nslog 的检查。

非常感谢任何帮助或建议!

4

1 回答 1

0

NSMutableArray新手常犯的以下错误UITableView

对于以下几点,如果您应该说是,

1)您已连接UITableView委托和数据源?即tableView.delegate = self;tableView.datasource = self;

2) 你NSMutableArray是在添加对象之前分配的。

3)你能打印(NSLog)添加的对象吗NSMutableArray?IENSLog(@"Count %d",[array count]);

UITableView4)添加对象后是否重新加载NSMutableArray?IE[tableview reloadData];

5)为数据源设置断点UITableView,它们是否调用?

于 2013-02-20T06:32:39.343 回答