UISwipeActionsConfiguration-表格行滑动后操作配置

是什么?

  • @interface UISwipeActionsConfiguration : NSObject
  • 表格行,滑动时执行操作的配置.

有什么用?

  • 实现"表格行"滑动后,执行多个按钮之间,各自不同功能的事件.

怎么使用?

  • + (instancetype)configurationWithActions:(NSArray *)actions;

示例

- (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView
leadingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath{

UIContextualAction * deleteAction =  [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"删除" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
    ....
   //执行操作
   completionHandler(YES);
 }];

UIContextualAction * signAction =  [UIContextualAction contextualActionWithStyle:UIContextualActionStyleNormal title:@"编辑" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
    ....
   //执行操作
   completionHandler(YES);
 }];

NSArray * arrayTemp = @[deleteAction,signAction];
UISwipeActionsConfiguration * swipeConfiguration = [UISwipeActionsConfiguration configurationWithActions: arrayTemp];
//完全滑动时,是否执行第一个操作
//swipeConfiguration.performsFirstActionWithFullSwipe = YES;
return swipeConfiguration;
}

效果图


完全滑动:多个按钮,因滑动而成为1个按钮。


performsFirstActionWithFullSwipe

  • UISwipeActionsConfiguration的属性,一个布尔值。

performsFirstActionWithFullSwipe 默认或者为Y时的含义是:完全滑动时,自动执行排列在第一个按钮的操作. (如上面示例, 第一个操作,指的是"删除")
performsFirstActionWithFullSwipe 为 NO 时: 就不会出现"完全滑动",这种情况发生.


也可以看看

UIContextualAction - 用户滑动表格行后,执行操作的事件
UIContextualActionStyle - 操作按钮的样式
UIContextualActionHandler - 执行操作的代码块


来自于哪里?

  • iOS-MJ-UI基础-大神班/day-10/左滑出现多个按钮

你可能感兴趣的:(UISwipeActionsConfiguration-表格行滑动后操作配置)