ios UITableView多选删除
2024-08-29 20:49:27
第一步,
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewCellEditingStyleDelete | UITableViewCellEditingStyleInsert;
}
UITableViewCellEditingStyleDelete是出现红的减号,再点一下就出来划动时出现的删除钮;UITableViewCellEditingStyleInsert是出现红的加号应该是插入数据的时候用的吧,没细研究,最神奇的是两个同时出现就出现了前面带圈的多选项.
第二步,调出前面带圈的多选项.其实就是调用[self.tableview setEditing:YES animated:YES]啦,隐藏的话就setEditing:NO
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (rightButton.title== @"确定") {
[deleteDic setObject:indexPath forKey:[dataArray objectAtIndex:indexPath.row]];
}
else
{
}
} - (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath{
if (rightButton.title == @"确定") {
[deleteDic removeObjectForKey:[dataArray objectAtIndex:indexPath.row]];
}
}
一个是多选状态下添加刚选择的项,一下移除刚取消的项.哎,真复杂.
第四步,得到想删除的项了,处理一下呗
[dataArray removeObjectsInArray:[deleteDic allKeys]];
[self.tableview deleteRowsAtIndexPaths:[NSArray arrayWithArray:[deleteDic allValues]] withRowAnimation:UITableViewRowAnimationFade];
[deleteDic removeAllObjects];
好啦,搞定,看一下效果图.
首先得到一个列表.
点击编辑,出现选择框.
选择想要删除的项.
点删除.
删除以后的效果.
具体代码见附件.
相关文章:
本文出自 “rainbird” 博客,请务必保留此出处http://rainbird.blog.51cto.com/211214/636270
最新文章
- iOS开发——高级技术精选OC篇&;Runtime之字典转模型实战
- C# 连接 Oracle 的几种方式
- 【云计算】K8S DaemonSet 每个node上都运行一个pod
- 轻松学习Linux之理解Shell的硬链接与软连接
- mongo数据库基础操作
- Pascal Language: Recommended Materials
- git使用备忘
- 如何在本地安装测试ECSHOP 转载
- iOS 中KVC、KVO、NSNotification、delegate 总结及区别-b
- git 简单教程更新
- java sni support result in svn fail
- html基本标签与属性
- HTML列表的常用属性及其应用
- Android设置View抖动动画
- 设计模式——享元模式(C++实现)
- JNDI 使用
- Educational Codeforces Round 63 (Rated for Div. 2) B. Game with Telephone Numbers 博弈思维+模拟+贪心思维
- java框架之SpringMVC(1)-入门&;整合MyBatis
- ffmpeg 处理视频项目中用到的一些命令
- 命令行下IIS的配置脚本Adsutil.vbs