如何在 iOS 中检测两次连续点击某一行上

如何在 iOS 中检测两次连续点击某一行上,第1张

你可以在三种不同方式 (不同根据预期的效果和编码样式)。

第一种方法将添加 doubletap 笔势识别器 (如果您正在寻找而不是两个水龙头双水龙头在任何的时间量)。我认为你可以自己编写代码。

第二个将被检测到的单元格的选择:

- (void)tableView:(UITableView )tableView didSelectRowAtIndexPath:(NSIndexPath )indexPath

{

//Check if the cell at indexPath is currently the tableview's selected cell then you have double tap

}

第三个是相同,第二,除非你创建一个 indexPath 变量并将其设置 didselectrow 方法。然后,如果下一个 didselectrow调用是确切的同一 indexPath 然后你有双水龙头。

我的投票将已保存的变量。我不敢肯定如何可靠的"选定的"连接的属性和单元格。但你将必须执行 didDeselectRow ,以及函数,因为可以获取调用的函数在外部连接选择的情况下。

- (UITableViewCell )tableView:(UITableView )tableView cellForRowAtIndexPath:(NSIndexPath )indexPath{

//1 创建可重用的cell

static NSString reuseId = @"car";

UITableViewCell cell = [tableView dequeueReusableCellWithIdentifier:reuseId];

if (cell == nil) {

cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reuseId];

}

//2 获取数据,给cell内部的子控件赋值

HMCarGroup carGroup = selfcarGroups[indexPathsection];

HMCar car = carGroupcars[indexPathrow];

cellimageViewimage = [UIImage imageNamed:caricon];

celltextLabeltext = carname;

//3 返回cell

return cell;

}

这个例子用的是indexPathsection

- (void)tableView:(UITableView )tableView didSelectRowAtIndexPath:(NSIndexPath )indexPath{

HMHero hero = selfheroes[indexPathrow];

//d出一个修改名称的对话框

UIAlertView alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:nil delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];

//设置alertview上显示文本框

alertViewalertViewStyle = UIAlertViewStylePlainTextInput;

//给文本框赋值

[alertView textFieldAtIndex:0]text = heroname;

//记录当前点击的cell的row

alertViewtag = indexPathrow;

[alertView show];

}

这个例子用的是indexPathrow。

去网上搜索了一下结果,

indexpathsection : 代表单元格(cell)的第几个分区

indexpathrow: 代表分区的第几行,

假如你是用代码方式直接将控件(如UILabel、UIButton等)加到UITableView的cell中去的话,,,在出了 [cpp] view plaincopyprint - (UITableViewCell )tableView:(UITableView )tableView cellForRowAtIndexPath:(NSIndexPath )indexPath { 。

你说的plain表是指的静态的tableView吗 还有你是想要获得headView还是当前表格的sectionView 如果是要获得当前的sectionView的话,你先获得当前表格显示的IndexPath,获得了indexPath了基本上都能获得了。

1创建数组要求NSMutableArray类型全局变量属性

注1:变数组容易实现增删 *** 作命名:_dataArray

注2:按手势需要添加代理UIGestureRecognizerDelegate

2dataArray赋值或初始化图:

注:于式建议使用本身类型相同没_dataArray进行初始化需要删除数组Crash通使用二

3实现点击Cell插入新数据

1、找并写UICollectionView自身代理:didSelectItemAtIndexPath;

2、获取点击NSIndexPath;

3、NSIndexPath转换数组;

4、调用insertItemsAtIndexPaths插入数据

4实现按Cell删除数据

1、cellForItemAtIndexPath创建并初始化按手势;

2、设置按间10秒触发;

3、添加手势代理delegate = self;

4、设置标识viewtag = indexPathrow

5实现按Cell删除数据

1、实现手势监听事件handlelongPress:;

2、区手势作始触发结束触发 *** 作选其实现否则调用两;

3、根据recognizer手势传递viewtag值删除数组;

4、recognizerviewtag转换NSIndexPath型再转换NSArray型;

5、调用deleteItemsAtIndexPaths删除数据

6

解决问题:

1、_dataArray使用直接赋值删除能导致程序崩溃;

2、删除调用deleteItemsAtIndexPaths崩溃;

3、使用手势获取数组标误超数组

/步骤

创建数组要求NSMutableArray类型全局变量属性

注1:变数组容易实现增删 *** 作命名:_dataArray

注2:按手势需要添加代理UIGestureRecognizerDelegate

iOS发 删除UICollectionViewcell

_dataArray赋值或初始化图:

注:于式建议使用本身类型相同没_dataArray进行初始化需要删除数组Crash通使用二

iOS发 删除UICollectionViewcell

实现点击Cell插入新数据

1、找并写UICollectionView自身代理:didSelectItemAtIndexPath;

2、获取点击NSIndexPath;

3、NSIndexPath转换数组;

4、调用insertItemsAtIndexPaths插入数据

iOS发 删除UICollectionViewcell

实现按Cell删除数据

1、cellForItemAtIndexPath创建并初始化按手势;

2、设置按间10秒触发;

3、添加手势代理delegate = self;

4、设置标识viewtag = indexPathrow

iOS发 删除UICollectionViewcell

实现按Cell删除数据

1、实现手势监听事件handlelongPress:;

2、区手势作始触发结束触发 *** 作选其实现否则调用两;

3、根据recognizer手势传递viewtag值删除数组;

4、recognizerviewtag转换NSIndexPath型再转换NSArray型;

5、调用deleteItemsAtIndexPaths删除数据

iOS发 删除UICollectionViewcell

解决问题:

1、_dataArray使用直接赋值删除能导致程序崩溃;

2、删除调用deleteItemsAtIndexPaths崩溃;

3、使用手势获取数组标误超数组

以上就是关于如何在 iOS 中检测两次连续点击某一行上全部的内容,包括:如何在 iOS 中检测两次连续点击某一行上、indexpath.section和indexpath.row分别什么时候用、iOS开发中 怎么获取plain表当前悬浮的区头等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9480181.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存