UITableView多选删除,类似mail中的多选删除效果
来源:互联网 发布:女排五连冠 知乎 编辑:程序博客网 时间:2023/09/28 03:20
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://rainbird.blog.51cto.com/211214/636270
第一步,实现-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
- (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]];
}
}
[self.tableview deleteRowsAtIndexPaths:[NSArray arrayWithArray:[deleteDic allValues]] withRowAnimation:UITableViewRowAnimationFade];
[deleteDic removeAllObjects];
本文出自 “rainbird” 博客,请务必保留此出处http://rainbird.blog.51cto.com/211214/636270
- (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
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView多选删除,类似mail中的多选删除效果
- UITableView类似Email的多选删除功能实现
- UITableView多选删除
- UITableView多选删除修改
- uitableview 使用多选删除
- UITableView 的多选删除
- UITableView的多选删除和滑动删除并存
- UITableView的多选删除方法
- UITableView 多选删除功能 IOS
- isKindOfClass, isMemberOfClass的区别
- PMP考试心得
- 摄像头旋转问题
- Android简单文件浏览器源代码
- 为什么通过sp & ~(THREAD_SIZE - 1) 可以获取到 task_struct
- UITableView多选删除,类似mail中的多选删除效果
- 定义JQuery插件
- MoreWindows 专注于Windows编程 白话经典算法系列之六 快速排序 快速搞定
- 正则表达式入门
- myeclipse 各种projects的区别
- new/delete 和malloc/free 的区别和联系
- Java开发中有时候用十六进制定义常量有什么好处?什么时候考虑使用十六进制?
- php中抽象类和接口的概念和区别
- VC中如何在对话框上显示位图