tableview 自定义左滑删除按钮

2018-04-04  本文已影响76人  shushuzhen

将下面这段代码放在当前控制器中

- (void)deleteAuto{
    
    for (UIView *subview in self.tableV.subviews)
    {
        
        if ([subview isKindOfClass:NSClassFromString(@"UISwipeActionPullView")])
        {
            // 和iOS 10的按钮顺序相反
            UIButton *deleteButton = subview.subviews[0];
          // 设置button的图片
            [deleteButton setImage:IMG(@"del_news") forState:UIControlStateNormal]; 
        }
    }
    
}

然后就是在tableview的代理方法中一定要写 十分重要

- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath{
    // 触发-(void)viewDidLayoutSubviews
     [self.view setNeedsLayout];   
}

在控制器的生命周期中调用

- (void)viewDidLayoutSubviews{
   [super viewDidLayoutSubviews];
   
   [self deleteAuto];
}
上一篇下一篇

猜你喜欢

热点阅读