UITableViewCell的textLabel和detailTextLabel不起作用

时间:2013-09-10 05:31:05

标签: ios objective-c uitableview

命令cell.textLabel.text和cell.detailTextLabel.text在控制台中提供输出,但它在模拟器上的表视图中没有给出任何值...

这是用于生成我使用过的单元格的代码..

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

    cell=[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];

  // Book *bookDetail=[booksArrayDataSource objectAtIndex:indexPath.row];


    cell.accessoryType=UITableViewCellAccessoryDetailDisclosureButton;

    cell.textLabel.text= [self titleForRow:indexPath];
    NSLog(@"title for row= %@", cell.textLabel.text);

    cell.detailTextLabel.text= [self subtitleForRow:indexPath];
    NSLog(@"subtitle for row= %@",cell.detailTextLabel.text);

    return cell;
}

2 个答案:

答案 0 :(得分:0)

转到storyboard / xib并将单元格类型从动态更改为副标题。

无论你在这里有什么,都不会被执行:

if (cell == nil)
{
...
}

答案 1 :(得分:-2)

如果单元格中的加载字符串值使用以下语句:

cell.textLabel.text =[[YOURArray_Name objectAtIndex:indexPath.row] stringValue]; (or)
cell.textLabel.text =[[YOURArray_Name objectAtIndex:indexPath.row] description];

如果单元格中的加载整数值使用以下语句:

cell.textLabel.text =[[YOURArray_Name objectAtIndex:indexPath.row] integerValue];

如果您在单元格中使用以下语句加载Float值:

cell.textLabel.text =[[YOURArray_Name objectAtIndex:indexPath.row] floatValue];