为什么我的UITableViewCellAccessoryCheckmark不显示?

时间:2013-08-01 02:40:47

标签: ios uitableview

在我的- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath中,我最初有:

if ([UploadManager isFileUploaded: filename])
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
else
    cell.accessoryType = UITableViewCellAccessoryNone;

但是,我认为我的UploadManager中可能存在错误,我将其更改为:

if ([UploadManager isFileUploaded: filename])
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
else
    cell.accessoryType = UITableViewCellAccessoryCheckmark;

进行测试。但是,我的单元格 STILL 没有显示复选标记。我做错了什么?!

谢谢!

修改

这应该没关系,但为了以防万一,这是我的全部(大部分)cellForIndexPath

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

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

    int row = [indexPath row];

    // Create cell layout
    NSString *filename = [self.tableItems objectAtIndex: row];

    // Name label
    UILabel *nameLabel = (UILabel*)[cell viewWithTag: nameLabelTag];
    if (nameLabel == nil)
    {
        nameLabel = [UILabel new];
        // blah blah, snip
        [cell addSubview: nameLabel];
    }

    nameLabel.text = filename;
    [nameLabel sizeToFit];
    CGRect rect = nameLabel.frame;
    rect.origin.x = 50;
    nameLabel.frame = rect;

    // More UI added to cell here.  Snip

    // Is uploaded checkmark
    if ([UploadManager isFileUploaded: filename])
        cell.accessoryType = UITableViewCellAccessoryCheckmark;
    else
        cell.accessoryType = UITableViewCellAccessoryCheckmark;

    return cell;
}

1 个答案:

答案 0 :(得分:1)

哦,呃!没关系...

我会删除这个问题,但将来会有人犯同样的错误,所以我会把它留给他们。

我的客户有这个奇怪的要求,他希望表总是处于编辑模式,所以小圆,红色删除行按钮总是显示。因此,我self.tableview.editing = YES;中有viewDidLoad。 tableview.editing隐藏了复选标记,将其关闭会将其恢复。

D'哦!

我想我必须说服他给我发一张我可以在imageview中使用的复选标记图片。或者其他一些。

(我已经试图说服他不要处于永远编辑模式 - 没有快乐。)