博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iphone: 可编辑的tableView Move&Delete
阅读量:7016 次
发布时间:2019-06-28

本文共 1692 字,大约阅读时间需要 5 分钟。

设置一个Button,点击可以删除,移动排序tableView,效果图如下:左边为移动,右边为删除

                                     

先说移动:

button要设置IBAction

- (IBAction)toggleMove {    [self.tableView setEditing:!self.tableView.editing animated:YES];        if (self.tableView.editing)        [self.navigationItem.rightBarButtonItem setTitle:@"Done"];    else        [self.navigationItem.rightBarButtonItem setTitle:@"Move"];}

self.tableView.editing属性是个bool型,表示tableView的编辑状态

这里设置button为两种文字,对应不同状态。

然后实现三个委托方法即可:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView           editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {    return UITableViewCellEditingStyleNone;}- (BOOL)tableView:(UITableView *)tableViewcanMoveRowAtIndexPath:(NSIndexPath *)indexPath {    return YES;}- (void)tableView:(UITableView *)tableViewmoveRowAtIndexPath:(NSIndexPath *)fromIndexPath      toIndexPath:(NSIndexPath *)toIndexPath {    NSUInteger fromRow = [fromIndexPath row];    NSUInteger toRow = [toIndexPath row];        id object = [list objectAtIndex:fromRow];    [list removeObjectAtIndex:fromRow];    [list insertObject:object atIndex:toRow];}

删除的则更简单了。

其button的action与上面一样,

只要实现一个委托方法:

- (void)tableView:(UITableView *)tableViewcommitEditingStyle:(UITableViewCellEditingStyle)editingStyleforRowAtIndexPath:(NSIndexPath *)indexPath {        NSUInteger row = [indexPath row];    [self.list removeObjectAtIndex:row];    [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]                     withRowAnimation:UITableViewRowAnimationAutomatic];}

 

也可以将二者结合起来,实现上面的4哥委托方法就行。只是要注意在editingStyleForRowAtIndexPath 方法种,返回UITableViewCellEditingStyleDelete

效果图如下:

   
本文转自老Zhan博客园博客,原文链接:http://www.cnblogs.com/mybkn/archive/2012/06/09/2543091.html
,如需转载请自行联系原作者
你可能感兴趣的文章
阿里云腾讯云服务器部署安装 Mysql5.7.20 【三部曲之一】
查看>>
webpack打包合并
查看>>
[转] 如何实现 React 写小程序-1
查看>>
iOS开发之 Method Swizzling 深入浅出
查看>>
百万开发师讲解:iOS性能优化
查看>>
简单的聊聊索引的那些事儿
查看>>
大快搜索数据爬虫技术实例安装教学
查看>>
【数据结构-----队列】
查看>>
你的网站还没用上 HTTPS 吗
查看>>
大型重构实践-多国家部署 spring 配置文件
查看>>
寻找技术大神
查看>>
开源大数据周刊-第8期
查看>>
记录我杭州 Android 面试的经历 | 掘金技术征文
查看>>
Flink在唯品会的实践
查看>>
SSM框架controller中遇到java.lang.NullPointerException
查看>>
开发者日报 2019年04月01日
查看>>
Linux常用命令
查看>>
基于vue2全家桶开发的匿名朋友圈及聊天应用
查看>>
npm私有仓库verdaccio在docker环境下的配置
查看>>
打造Android轻量级框架XSnow的后继之路
查看>>