ios UITableViewController标签输出为零

时间:2013-11-11 11:53:13

标签: ios uilabel uitableview

我在UITableViewController上使用了以下代码。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    // Return the number of sections.
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    // Return the number of rows in the section.
    return [buyer count];
}

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

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

    buyerobject = [buyer objectAtIndex:indexPath.row];
    UILabel *Label = (UILabel *)[cell viewWithTag:10];
    NSString *temp = [[NSString alloc]initWithString:[buyerobject objectForKey:@"text"]];
    Label.text = temp;

    return cell;
}

当我打印上面的“temp”时,我得到了输出。但是细胞内的标签中没有显示任何内容。 正确给出了所有单元标识符和标记值。 如果有人遇到类似的问题,并找到了解决此类错误的方法,那么请帮帮忙。

2 个答案:

答案 0 :(得分:0)

这是因为UILabel没有引用UITableViewCell视图层次结构中的实际视图(您没有将其添加为UITableViewCell的子视图)。尝试使用带

的单元格设置标签
[cell.textLabel setText:temp];

您可以尝试使用设置文本的断点进行调试并打印出(标签)标签对象的内容吗?

答案 1 :(得分:0)

根据您的代码,您应该使用cell.textLabel.text=temp; 您还在单元格内搜索标记为10的视图,但可能您从未设置过它。