当项目中需要自定义表格多选编辑状态下的选中图片时候,系统并没有给我们什么方法去直接自定义。此时我们需要在选中cell的方法里去做一些操作
如下,当表格编辑状态时,我们在选中的方法里面去做遍历,获取到左侧那个imageView
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//[tableView deselectRowAtIndexPath:indexPath animated:YES];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
for (UIView *v1 in cell.subviews) {
NSLog(@"cell.subview---%@", v1);
if ([v1 isKindOfClass:[UIControl class]]) {
for (UIView *v2 in v1.subviews) {
NSLog(@"UITableViewCellEditControl.subview---%@", v2);
if ([v2 isKindOfClass:[UIImageView class]]) {
UIImageView *imageView = (UIImageView *)v2;
imageView.image = [UIImage imageNamed:@"hood"];
}
}
}
}
}
我们可以看到cell.subviews输出日志如下
再次遍历红框内的subviews,输出日志如下
此时我们去改变该imageView的image即可
效果图如下,图片尺寸不太对,有点模糊