字幕没有出现UITableView单元格

时间:2013-07-31 19:04:49

标签: ios uitableview

我是appdesign和Objective-C的新手。我正在写一个简单的食物应用程序,其中有一些食物存储在一个数组中,其中包含食物,食物名称,烹饪时间和文件名的详细信息。

我正在尝试使用副标题,但它没有显示出来。我已经阅读了其他各种帖子,并试图实现一些答案,但没有一个有效。

这是我的代码,如果有任何明显不正确的请告诉我。谢谢。

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

    static NSString *CellIdentifier = @"FoodCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    if (cell == nil){
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }

    Food *current = [foodArray objectAtIndex:indexPath.row];


    [cell.textLabel setText:[current name]];
    [[cell detailTextLabel] setText:@[current cookTime]];
    cell.imageView.image = [UIImage imageNamed:[current fileName]];

    return cell;
}

3 个答案:

答案 0 :(得分:2)

替换

[[cell detailTextLabel] setText:@[current cookTime]];

[[cell detailTextLabel] setText:[current cookTime]];

请注意,这假设cookTimeNSString。如果它是其他东西,比如代表分钟的整数,你会做这样的事情:

[[cell detailTextLabel] setText:[NSString stringWithFormat:@"%d minutes", [current cookTime]]];

此外,您可能会发现使用此格式更容易:

cell.detailTextLabel.text = [NSString stringWithFormat:@"%d minutes", [current cookTime]];

答案 1 :(得分:0)

尝试替换:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

使用:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

答案 2 :(得分:0)

尝试使用

cell.detailTextLabel.text = [current cookTime];