//参考了 https://www.jianshu.com/p/432b85611f50 这个的
//设置是否可以左滑显示按钮
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
-(NSArray<UITableViewRowAction *> *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewRowAction *TopBtn =[UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@" " handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
NSLog(@"点击了置顶");
[tableView setEditing:NO animated:YES];//点击之后的把侧滑恢复
}];
TopBtn.backgroundColor =[UIColor whiteColor];
return @[TopBtn];
}
-(void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
if (@available(iOS 13.0, *)) {
for (UIView *subView in self.PlangetaryTableView.subviews) {
if ([subView isKindOfClass:NSClassFromString(@"_UITableViewCellSwipeContainerView")] && [subView.subviews count] >= 1) {
UIView *swipeView = subView.subviews.firstObject;
swipeView.backgroundColor =[UIColor clearColor];
if (swipeView.subviews.count >= 1) {
UIButton *deleteButton = swipeView.subviews[0];
[self configDeleteButton:deleteButton];
}
}
}
}else if (@available(iOS 11.0, *)){
for (UIView *subView in self.PlangetaryTableView.subviews) {
if ([subView isKindOfClass:NSClassFromString(@"UITableViewWrapperView")]) {
for (UIView *actionView in subView.subviews) {
if ([actionView isKindOfClass:NSClassFromString(@"UISwipeActionPullView")]) {
actionView.backgroundColor =[UIColor clearColor];
if (actionView.subviews.count >= 1) {
UIButton *deleteButton = actionView.subviews[0];
[self configDeleteButton:deleteButton];
}
}
}
}
}
} else {
PlangetaryTableViewCell *cell = [self.PlangetaryTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
for (UIView *subView in cell.subviews) {
if ([subView isKindOfClass:NSClassFromString(@"UITableViewCellDeleteConfirmationView")] && [subView.subviews count] >= 1) {
UIButton *deleteButton = subView.subviews[0];
[self configDeleteButton:deleteButton];
}
}
}
}
-(void)configDeleteButton:(UIButton *)button
{
UIButton *Top_icon =[UIButton buttonWithType:UIButtonTypeCustom];
[Top_icon setImage:[UIImage imageNamed:@"top_icon"] forState:UIControlStateNormal];
[button addSubview:Top_icon];
[Top_icon mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.centerY.mas_equalTo(button);
}];
}
网友评论