如何让uitableviewcell无法选择

时间:2011-10-17 20:33:06

标签: iphone ios uitableview

我正在整理一个基于4个tableviewcells的搜索字符串,每个单元格打开一个子视图并加载一组用户选择设置上一个视图单元格的数据。

有一个顺序需要设置这些单元格,以便子视图中每个前面的数据列表与父视图中的数据集相关。

即。在第一个单元格中选择一种类型的汽车,在下一个单元格中查看与所选汽车类型相关的模型。

除此之外我的问题的基础是如何在设置前一个单元格之前使单元格无法选择。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//...
if (indexPath.section == 0) 
    {

if (indexPath.row == 0) // <<--- what could I put in here.... 
        {
//...
}

} }

3 个答案:

答案 0 :(得分:26)

禁止单元格跟踪任何互动:

[cell setUserInteractionEnabled:NO];

或允许交互,隐藏选择颜色,单击时,不执行任何操作。

[cell setSelectionStyle:UITableViewCellSelectionStyleNone];

- (void) tableViewDidSelectRow.... {
    if(indexPath.row == indexOfCellWithNoUserInteraction) {
        //do nothing
    }
}

答案 1 :(得分:6)

使用tableView:willSelectRowAtIndexPath:。对于您不想选择的行,返回nil。

答案 2 :(得分:2)

Swift语法

cell.selectionStyle = UITableViewCellSelectionStyle.None