怎样修改tableview编辑模式下多选的图片

sinat_20082975 2015-12-27 03:59:22
iOS中,tableview编辑模式下多选 默认是统一右滑出现小圆圈选中为蓝色的选中效果,怎样修改这个图片呢?有没有大神告知一下!!
...全文
2353 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
m4980q 2016-08-10
  • 打赏
  • 举报
回复
在setEditing方法里将没有选择的图片更改了就好了 - (void)setEditing:(BOOL)editing animated:(BOOL)animated { [super setEditing:editing animated:animated]; for (UIControl *control in self.subviews){ if ([control isMemberOfClass:NSClassFromString(@"UITableViewCellEditControl")]){ for (UIView *v in control.subviews) { if ([v isKindOfClass: [UIImageView class]]) { UIImageView *img=(UIImageView *)v; if (!self.selected) { img.image=[UIImage imageNamed:@"noS"]; } } } } } } -(void)layoutSubviews { NSLog(@"%@",self.subviews); for (UIControl *control in self.subviews){ if ([control isMemberOfClass:NSClassFromString(@"UITableViewCellEditControl")]){ for (UIView *v in control.subviews) { if ([v isKindOfClass: [UIImageView class]]) { UIImageView *img=(UIImageView *)v; if (self.selected) { img.image=[UIImage imageNamed:@"S"]; }else { img.image=[UIImage imageNamed:@"noS"]; } } } } } [super layoutSubviews]; }
kangkang0704 2016-04-28
  • 打赏
  • 举报
回复
楼主解决自定义图片的问题吗???求分享
ravatar0423 2016-04-10
  • 打赏
  • 举报
回复
直接修改cell的accessoryView; 参考: http://stackoverflow.com/questions/10208998/replace-the-default-checkmark-for-uitableview-with-a-custom-image
byebyeyuchai 2016-04-10
  • 打赏
  • 举报
回复
http://www.jianshu.com/p/4863580bf627 这个方法试下
byljbdh 2016-04-09
  • 打赏
  • 举报
回复
楼主问题解决了吗? 我也遇到了同样的问题. 第一次点击编辑按钮的时候.control.subviews为空. 所以无法改变他的图片.
sinat_20082975 2016-02-23
  • 打赏
  • 举报
回复
大神,我在第一次点击编辑按钮的时候,control.subviews是空的,不走遍历里面的方法。每次点击编辑,tableview右滑的时候control.subviews都是空的。。应该怎么办呢?
不担心 2016-02-22
  • 打赏
  • 举报
回复
我以前用的时候好像没遇到这个问题 如果有这个问题的话解决应该很简单,你在创建cell的时候默认执行一下里面的代码不就行了 或者简单点,创建的时候设置一下self.selected=NO;
sinat_20082975 2016-02-19
  • 打赏
  • 举报
回复
谢谢大神~~可是这个方法在我点击的时候确实能改变但是当第一次编辑状态下的图片怎么改变呢?因为现在是第一次编辑状态下的图片还是默认的,当点击之后才会变。
不担心 2015-12-27
  • 打赏
  • 举报
回复
你可以找到这个选中效果的imageview,改成你想要的图片 自定义你的cell,重写layoutSubviews方法,每次点击cell选中或者不选中的时候都会触发这个方法,然后在这个方法中判断是什么状态,指定对应的状态图片
-(void)layoutSubviews
{
    [super layoutSubviews];
    for (UIControl *control in self.subviews){
        if ([control isMemberOfClass:NSClassFromString(@"UITableViewCellEditControl")]){
            for (UIView *v in control.subviews)
            {
                if ([v isKindOfClass: [UIImageView class]]) {
                    UIImageView *img=(UIImageView *)v;
                    if (self.selected) {
                        img.image=[UIImage imageNamed:@"XXX0.png"];
                    }else
                    {
                        img.image=[UIImage imageNamed:@"XXX1.png"];
                    }
                }
            }
        }
    }
}

29,049

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧