UITableViewCell侧滑删除之侧滑手势不灵敏
2017-11-09 14:59
141 查看
下午在修改项目源码的时候,优化了某些功能。
其中,在实现UITableViewCell的侧滑删除功能时,遇到一个坑,特地记录一下。
首先,实现UITableView侧滑删除功能,需要我们的代码实现几个代理方法。
_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0.0f, TopBarHeight, ScreenWidth, ScreenHeight-TopBarHeight-TabBarHeight) style:UITableViewStylePlain];
其中,在实现UITableViewCell的侧滑删除功能时,遇到一个坑,特地记录一下。
首先,实现UITableView侧滑删除功能,需要我们的代码实现几个代理方法。
//- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { // return YES; //} - (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath { return [cLanguage getString:@"SET103"]; } - (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleDelete; } //- (NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath { // UITableViewRowAction *deleteRoWAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:[cLanguage getString:@"SET103"] handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) { // // 删除操作 // if ([clsOtherFun CheckNetworkStatus:NO]) { // // clsUserDelivery *userDelivery = [[clsUserDelivery getUserDeliverys] objectAtIndex:indexPath.row]; // // _deleteUser = userDelivery; // // UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"" message:[cLanguage getString:@"MSG008"] delegate:self cancelButtonTitle:[cLanguage getString:@"SET070"] otherButtonTitles:[cLanguage getString:@"SET058"], nil]; // [alertView show]; // } // else{ // UIAlertView* alert = [[UIAlertView alloc]initWithTitle:@"" message:[cLanguage getString:@"MSG015"] delegate:nil cancelButtonTitle:[cLanguage getString:@"SET058"] otherButtonTitles:nil, nil]; // [alert show]; // } // }]; // return @[deleteRoWAction]; //} - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle == UITableViewCellEditingStyleDelete) { [_tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationLeft]; if ([clsOtherFun CheckNetworkStatus:NO]) { clsUserDelivery *userDelivery = [[clsUserDelivery getUserDeliverys] objectAtIndex:indexPath.row]; _deleteUser = userDelivery; UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"" message:[cLanguage getString:@"MSG008"] delegate:self cancelButtonTitle:[cLanguage getString:@"SET070"] otherButtonTitles:[cLanguage getString:@"SET058"], nil]; [alertView show]; } else{ UIAlertView* alert = [[UIAlertView alloc]initWithTitle:@"" message:[cLanguage getString:@"MSG015"] delegate:nil cancelButtonTitle:[cLanguage getString:@"SET058"] otherButtonTitles:nil, nil]; [alert show]; } } }
_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0.0f, TopBarHeight, ScreenWidth, ScreenHeight-TopBarHeight-TabBarHeight) style:UITableViewStylePlain];
相关文章推荐
- 手势冲突---UITableView删除, 自定义侧滑返回,UIScroll的手势冲突
- ListView侧滑删除的实现,SlideDeleteListView,针对ScrollView嵌套ListView视图和手势冲突优化
- ListView侧滑删除的实现,SlideDeleteListView,针对ScrollView嵌套ListView视图和手势冲突优化
- 侧滑返回和TableView滑动删除手势冲突完美解决
- 高仿QQ6.0之侧滑删除
- 集下拉刷新与侧滑删除于一身的库 PullToRefresh and SwipeMenu
- uiview删除自身先前所有的手势
- 闲来蛋疼写个qq侧滑删除
- 云信demo如何修改为侧滑删除聊天列表
- android侧滑删除实现分析
- 使用ItemTouchHelper实现侧滑删除,拖拽
- Android listview 侧滑 SwipeListView 详解 实现微信,QQ等滑动删除效果
- Android侧滑编辑、删除效果
- 添加侧滑手势返回上一级界面
- 适合RecyclerView使用的万能侧滑删除控件
- iOS侧滑手势的开启关闭
- Android 侧滑删除 SwipeMenuListView
- 【android自定义控件】android ListView添加侧滑删除
- recycleview 使用侧滑删除 android 6.0机型出现item抖动;列表一屏以上,点击后面的item(需要滚动查看了) 然后马上会往上滚动回首个item,滚回第一项
- android 仿微信侧滑删除SwipeListView实例