didSelectRowAtIndexPath:如何获取旧的indexPath以取消选择复选标记?
如何取消选择 tableView 中先前选择的行?我找不到获取 oldIndexPath 的解决方案
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *newCell = [tableView cellForRowAtIndexPath:indexPath];
if (newCell.accessoryType == UITableViewCellAccessoryNone) {
newCell.accessoryType = UITableViewCellAccessoryCheckmark;
}
}
How to deselect previously selected row in tableView ?? I can't find solution to obtain oldIndexPath
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *newCell = [tableView cellForRowAtIndexPath:indexPath];
if (newCell.accessoryType == UITableViewCellAccessoryNone) {
newCell.accessoryType = UITableViewCellAccessoryCheckmark;
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
除非您存储以前的索引路径,否则您将无法检索它。
只需将其存储在 ivar 中,当您检测到选择了一行时,下次您将能够删除上一个单元格上的复选标记。
Unless you store the previous index path, you won't be able to retrieve it.
Just store it in an ivar, when you detect a row is selected, the next time you will be able to remove the checkmark on the previous cell.