您会认为这很容易。使用此代码,我可以检查一个表中的多行,但我想一次只检查一行。如果用户选择其他行,那么我希望旧行只是自动取消选中。不知道该怎么做。这是我的代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

[tableView deselectRowAtIndexPath:indexPath animated:YES];


UITableViewCell *theCell = [tableView cellForRowAtIndexPath:indexPath];

if (theCell.accessoryType == UITableViewCellAccessoryNone) {
    theCell.accessoryType = UITableViewCellAccessoryCheckmark;
    }

    else if (theCell.accessoryType == UITableViewCellAccessoryCheckmark) {
    theCell.accessoryType = UITableViewCellAccessoryNone;
    }
}


感谢您提供的任何帮助!

最佳答案

最好的方法是在cellForRowAtIndexPath中设置附件类型,并使用didSelectRowAtIndexPath仅记录应选择的路径,然后调用reloadData。

关于ios - UITableView选中标记一次仅一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56641744/

10-10 13:37