在我的- (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;
}
答案 0 :(得分:1)
我会删除这个问题,但将来会有人犯同样的错误,所以我会把它留给他们。
我的客户有这个奇怪的要求,他希望表总是处于编辑模式,所以小圆,红色删除行按钮总是显示。因此,我self.tableview.editing = YES;
中有viewDidLoad
。 tableview.editing隐藏了复选标记,将其关闭会将其恢复。
D'哦!
我想我必须说服他给我发一张我可以在imageview中使用的复选标记图片。或者其他一些。
(我已经试图说服他不要处于永远编辑模式 - 没有快乐。)