UITableView多选

时间:2010-10-10 09:34:15

标签: iphone uitableview

我有一个UITableView,我想用它来进行多项选择。我已将大部分功能集中在一起,但我遇到了一个小问题。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"Selected");
    UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];

    if ([selectedCell accessoryType] == UITableViewCellAccessoryNone) {
        [selectedCell setBackgroundColor:[UIColor grayColor]];
        [selectedCell setAccessoryType:UITableViewCellAccessoryCheckmark];
        [[selectedCell textLabel] setTextColor:[UIColor whiteColor]];
    } else {
        [selectedCell setAccessoryType:UITableViewCellAccessoryNone];
        [selectedCell setBackgroundColor:[UIColor clearColor]];
        [[selectedCell textLabel] setTextColor:[UIColor blackColor]];
    }
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

这是我用来保持单元格选择的代码,但是当用户点击单元格时,aaccessory视图变为白色然后变回蓝色。

让配件视图保持白色的最佳方法是什么?

由于

1 个答案:

答案 0 :(得分:2)

我认为实现这一目标的简单方法是创建带有复选标记图像的自定义图像视图(您需要将其作为白色复选标记)并在选中时将其设置为附件视图。

这将避免附件视图的标准行为并实现您的目标。