tableview编辑状态在编辑状态下怎么批量选择

word怎么批量选择特定对象_Word常见问题
word怎么批量选择特定对象
【Word常见问题】学习啦 编辑:张伟 本文已影响人
  我们在编辑文档,经常会需要调整部分对象的格式,这时候我们该怎么做?
  在&开始&选项卡中&编辑&组单击&查找&右侧下三角,然后选&高级查找&。
  打开&查找和替换&对话框,在&查找&选项卡中,单击&更多&。
  单击左下角的&格式&,然后在弹出菜单中选择&样式&。
  打开&查找样式&对话框,在列表中选择样式如&标题3&,然后单击&确定&返回&查找和替换&对话框。
  如果你是阅读查找,可以单击&阅读突出显示&右侧的下三角,选择&全部突出显示&,然后单击&关闭&即可。
  如果你是修改对象样式,可以单击&在以下项中查找&右侧的下三角,选择&主文档&,这样可以将&标题3&样式的文字全部选中,然后单击&关闭&后,你可以批量修改样式了。
[word怎么批量选择特定对象]相关的文章
看过本文的人还看了
12569人看了觉得好
7825人看了觉得好
7006人看了觉得好
【Word常见问题】图文推荐
Copyright & 2006 -
All Rights Reserved
学习啦 版权所有iOS tableviewCell的多行选择删除和全选删除 - 简书
下载简书移动应用
写了12468字,被30人关注,获得了40个喜欢
iOS tableviewCell的多行选择删除和全选删除
记录一下项目中遇到的tableviewCell多行选择删除和全选删除。
效果图如上图1 首先 创建数组2 创建tableview self.tableView.editing = NO;//默认tableview的editing 是不开启的3 全选和多选 删除按钮//选择按钮UIButton *selectedBtn = [UIButton buttonWithType:UIButtonTypeSystem];selectedBtn.frame = CGRectMake(0, 0, 60, 30);[selectedBtn setTitle:@"选择" forState:UIControlStateNormal];[selectedBtn addTarget:self action:@selector(selectedBtn:) forControlEvents:UIControlEventTouchUpInside];UIBarButtonItem *selectItem = [[UIBarButtonItem alloc] initWithCustomView:selectedBtn];self.navigationItem.rightBarButtonItem =selectI//
全选_selectAllBtn = [UIButton buttonWithType:UIButtonTypeSystem];_selectAllBtn.frame = CGRectMake(0, 0, 60, 30);[_selectAllBtn setTitle:@"全选" forState:UIControlStateNormal];[_selectAllBtn addTarget:self action:@selector(selectAllBtnClick:) forControlEvents:UIControlEventTouchUpInside];UIBarButtonItem *leftItem = [[UIBarButtonItem alloc] initWithCustomView:_selectAllBtn];self.navigationItem.leftBarButtonItem = leftI_selectAllBtn.hidden = YES;_baseView = [[UIView alloc] initWithFrame:CGRectMake(0, self.view.frame.size.height- 60, self.view.frame.size.width, 60)];_baseView.backgroundColor = [UIColor grayColor];[self.view addSubview:_baseView];//删除按钮_deleteBtn = [UIButton buttonWithType:UIButtonTypeCustom];_deleteBtn.backgroundColor = [UIColor redColor];[_deleteBtn setTitle:@"删除" forState:UIControlStateNormal];_deleteBtn.frame = CGRectMake(0, 0, self.view.frame.size.width, 60);[_deleteBtn addTarget:self action:@selector(deleteClick:) forControlEvents:UIControlEventTouchUpInside];[_baseView addSubview:_deleteBtn];4 tableview的delegate和datasource//是否可以编辑
默认的时YES-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{return YES;}//选择编辑的方式,按照选择的方式对表进行处理-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{if (editingStyle == UITableViewCellEditingStyleDelete) {//删除//真正项目中做删除//1.将表中的cell删除//2.将本地的数组中数据删除//3.最后将服务器端的数据删除}}//选择你要对表进行处理的方式
默认是删除方式-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{return UITableViewCellEditingStyleDelete | UITableViewCellEditingStyleI}******//选中时将选中行的在self.dataArray 中的数据添加到删除数组self.deleteArr中- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{[self.deleteArr addObject:[self.dataArray objectAtIndex:indexPath.row]];}******//取消选中时 将存放在self.deleteArr中的数据移除- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{[self.deleteArr removeObject:[self.dataArray objectAtIndex:indexPath.row]];}实现完tableview的代理方法 下面处理各个按钮的响应事件1 首先是选择按钮的响应事件 在按钮事件里面要有self.tableView.allowsMultipleSelectionDuringEditing = YES; 允许支持同时选中多行然后在点击的时候让tableview.editing = !tableview.editing 点击此按钮可切换tableview的编辑状态- (void)selectedBtn:(UIButton *)button {//支持同时选中多行self.tableView.allowsMultipleSelectionDuringEditing = YES;self.tableView.editing = !self.tableView.if (self.tableView.editing) {_selectAllBtn.hidden = NO;[button setTitle:@"完成" forState:UIControlStateNormal];}else{_selectAllBtn.hidden = YES;[button setTitle:@"删除" forState:UIControlStateNormal];}}2 全选按钮的响应事件点击全选按钮时 要在这里选中所有的cell 我在网上看到很多资料都是选中当前可见的cell 我们项目要求是全部cell ,所以在这里我这样去做 在self.dataArray里面遍历, 然后找到对应的一共多少行, 获取索引值 indexPath,tableview有系统方法 [self.tableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionTop]; 选择全部的cell
此时在这个全选方法中将数据源self.dataArray的所有数据全部添加到self.deleteArr (存储删除数据的数组中)//全选- (void)selectAllBtnClick:(UIButton *)button {//
[self.tableView reloadData];for (int i = 0; i & self.dataArray. i ++) {NSIndexPath *indexPath = [NSIndexPath indexPathForItem:i inSection:0];[self.tableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionTop];[self.deleteArr addObjectsFromArray:self.dataArray];}NSLog(@"self.deleteArr:%@", self.deleteArr);}3 删除按钮的处理事件无论是多行删除还是全部删除的数据对tableview的操作都是走这个delete方法的。在方法中判断当前的tableview是否处于编辑状态。然后再执行删除操作,关键点就是将数据源self.dataArray中的要删除的数据移除,之前我们的多选或者全选已经将我们要删除的数据存储在self.deleteArr中了 ,所以在这里我们用[self.dataArray removeObjectsInArray:self.deleteArr];这个方法操作 然后刷新tableview。至此就可以实现功能了。- (void)deleteClick:(UIButton *) button {if (self.tableView.editing) {//删除[self.dataArray removeObjectsInArray:self.deleteArr];[self.tableView reloadData];}}总结 :这里面一共有以下几个点 1 在多选删除时 在didSelectRowAtIndexPath这个方法中,根据cell所在行的索引值将此行的数据存到self.deleteArr中 [self.deleteArr addObject:[self.dataArray objectAtIndex:indexPath.row]];- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{}当取消删除时,要将self.deleteArr中的数据移除,不然会造成 (你先选中一行 然后取消选中 但是当你点击删除按钮时,这行cell还是会被删除)- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{}2 在全选时。将self.dataArr 中的全部数据都赋值给self.deleteArrNSIndexPath *indexPath = [NSIndexPath indexPathForItem:i inSection:0];[self.tableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionTop];[self.deleteArr addObjectsFromArray:self.dataArray];3 执行删除操作时,将self.dataArr中包含self.deleteArr的数据移除self.dataArray removeObjectsInArray:self.deleteArr];[self.tableView reloadData];后记:还有一个在cell中添加长按手势 使tableview进入编辑状态在-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 方法中 为cell添加长按手势UILongPressGestureRecognizer *longPressed = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPressedAct:)];longPressed.minimumPressDuration = 1;[cell.contentView addGestureRecognizer:longPressed];实现长按手势的响应方法:-(void)longPressedAct:(UILongPressGestureRecognizer *)gesture{if(gesture.state == UIGestureRecognizerStateBegan){CGPoint point = [gesture locationInView:self.tableView];NSIndexPath * indexPath = [self.tableView indexPathForRowAtPoint:point];if(indexPath == nil)//add your code hereself.tableView.editing = YES;}}
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
简书程序员大本营
投稿须知:
1.本专题仅收录与程序有关的文章。
2.请在代码框里写代码,尽量保证可看性。
· 44125人关注
专题内容主要包括OC、swift等涉及到iOS开发进阶的内容。
swift可以关注下我的另一个专题:
swift开发...
· 8642人关注
· 1177人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式://默认选中第一行NSIndexPath&*firstPath = [NSIndexPath&indexPathForRow:0inSection:0];[self._tableView&selectRowAtIndexPath:firstPath&animated:YESscrollPosition:UITableViewScrollPositionTop];//选中背景自定义cell.selectedBackgroundView=[[[UIImageView&alloc]initWithImage:[UIImage&imageNamed:@&cell_selected_bg&]]autorelease];主题 : UITableView如何在编辑状态可以选中Cell
级别: 新手上路
可可豆: 220 CB
威望: 220 点
在线时间: 88(时)
发自: Web Page
UITableView如何在编辑状态可以选中Cell&&&
如题。当UITableView进入Editng状态,选中cell能响应didSelectRowAtIndexPath谢谢
级别: 侠客
UID: 15315
可可豆: 684 CB
威望: 682 点
在线时间: 405(时)
发自: Web Page
同问。。。。。。。。。。
级别: 侠客
可可豆: 830 CB
威望: 830 点
在线时间: 89(时)
发自: Web Page
[self.tableView setAllowsSelectionDuringEditing:YES];
级别: 圣骑士
可可豆: 2549 CB
威望: 2549 点
在线时间: 534(时)
发自: Web Page
引用 引用第2楼f_frank于 17:31发表的&&:[self.tableView setAllowsSelectionDuringEditing:YES]; 我顶你,一直没怎么注意这个属性,直到某次出了问题困扰了我半个小时。。。
级别: 新手上路
可可豆: 69 CB
威望: 69 点
在线时间: 218(时)
发自: Web Page
怎样加粗单元格横线的(加深,加粗)粗度呢?
关注本帖(如果有新回复会站内信通知您)
3*3+1 正确答案:10
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版

我要回帖

更多关于 tableview批量删除 的文章

 

随机推荐