1

像往常一样,当一个 tableviewcell 被触摸时,它将被选中。但是现在我需要在我的表格视图中永远不会选择一个单元格。我怎么能禁止选择一个表格视图单元格?

修改 didSelectRowForIndexPath: 方法后。现在可以了。Thx ALLl :) 一旦选择了单元格(需要被禁止),我只需使用 selectRowAtIndexPath 方法来选择之前选择的单元格以再次选择。

4

4 回答 4

2

正确的方法是使用tableView:willSelectRowAtIndexPath:.
与所有其他答案不同,这也适用于 segues ;-)

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    if (indexPath should not be selected) {
        // if another indexPath should be selected instead return this indexPath
        return nil;
    }
    return indexPath;
}
于 2012-04-05T09:40:27.773 回答
1

您可以禁用该单元格的用户交互或为该单元格设置选择样式无。希望有帮助!

于 2012-04-05T07:40:31.570 回答
1

在您的-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath方法中,将以下行添加到您不希望选择的单元格中:

cell.selectionStyle = UITableViewCellSelectionStyleNone;

希望能帮助到你

编辑

并在您的-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath方法中在开头添加以下内容:

if (indexPath == indexPathOfTheCellThatShouldntBeSelected) return;
于 2012-04-05T07:40:51.180 回答
1

在您的didSelectRowForIndexPath:方法中,您可以检查电池是否符合您的质量标准,UIAlertView如果符合要求,请显示或继续

于 2012-04-05T07:42:56.937 回答