UITableViewCell设置 checkmark的问题

之前设置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);
    }
posted on 2012-08-29 10:41  easonoutlook  阅读(2512)  评论(0编辑  收藏  举报