之前设置UITableViewCell的checkMark的属性,有20个cell
选择其中的一个进行设置checkmark ,但是一直无法设置成功,之前采用的方式是通过indexPath来标记
将上一个indexPath设置为oldIndexPath, 但是无法标记成功,后面把上一个 UITableViewCell 来作为标记,可以解决。
代码如下
[tableView deselectRowAtIndexPath:indexPath animated:YES]; if ([indexPath section] == 0) { if (self.wallpaperIndexpath != nil) { wallpaperOldCell.accessoryType = UITableViewCellAccessoryNone; } [[tableView cellForRowAtIndexPath:indexPath] setAccessoryType:UITableViewCellAccessoryCheckmark]; wallpaperOldCell = [tableView cellForRowAtIndexPath:indexPath]; self.wallpaperIndexpath = indexPath; NSLog(@"Wallpaper new index path is %@", indexPath); }else if ([indexPath section] == 1){ if (self.ringtoneIndexpath != nil) { ringtoneOldCell.accessoryType = UITableViewCellAccessoryNone; } [[tableView cellForRowAtIndexPath:indexPath] setAccessoryType:UITableViewCellAccessoryCheckmark]; ringtoneOldCell = [tableView cellForRowAtIndexPath:indexPath]; self.ringtoneIndexpath = indexPath; NSLog(@"Ringtone new index path is %@", indexPath); }