iOS 11 UITableView 사 이 드 슬라이딩 해결 무한 스 트 레 칭 삭제 방법

머리말
본 고 는 iOS 11 의 UITableView 사 이 드 스 트 레 칭 을 해결 하고 무한 스 트 레 칭 을 삭제 하 는 것 에 관 한 내용 을 소개 하 였 으 며,여러분 들 이 참고 학습 을 할 수 있 도록 공유 하 였 습 니 다.다음은 더 이상 말씀 드 리 지 않 겠 습 니 다.상세 한 소 개 를 해 보 겠 습 니 다.

- (NSArray<UITableViewRowAction *> *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath{
 ...
}
iOS 11 사 이 드 슬라이딩 삭제 기능 을 여전히 상기 방법 으로 처리 하지만 사 이 드 슬라이딩 무한 스 트 레 칭 을 발견 한 후 자동 으로 삭제 방법 을 호출 합 니 다.
iOS 11 에 방법 이 추가 되 었 습 니 다.

- (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath API_AVAILABLE(ios(11.0)){
 if (@available(iOS 11.0, *)) {
  
  NSString *title = @"  ";
  if (indexPath.section == 0) {
   title = @"    ";
  } else {
   title = @"  ";
  }
  UIContextualAction *topAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleNormal title:title handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
   
   ...
   
   //      ,      ,      
   [tableView setEditing:NO animated:YES];
   completionHandler(true);
  }];
  
  UIContextualAction *deleteAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"  " handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
   
   //      ,      ,      
   [tableView setEditing:NO animated:YES];
   completionHandler(true);
  }];
  
  UISwipeActionsConfiguration *actions = [UISwipeActionsConfiguration configurationWithActions:@[deleteAction,topAction]];
  //         
  actions.performsFirstActionWithFullSwipe = NO;
  return actions;
 }else{
  return nil;
 }
}
iOS 11 이전 에는 사 이 드 스 트 레 칭 무선 스 트 레 칭 이 일어나 지 않 습 니 다.
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기