gpt4 book ai didi

iphone - 具有多个手势的 UITableViewCell : long-press and tap

转载 作者:可可西里 更新时间:2023-11-01 04:14:16 24 4
gpt4 key购买 nike

如问题所述,我想针对 UITableViewCell 上的点击和长按实现两种不同的操作。

我想我必须在每个阶段取消选择该行并且不在此处放置任何函数:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:NO];
}

然后从 Storyboard 添加 Tap Gestures,但是当我将 Action 拖到原型(prototype)单元格时 Storyboard 给我一个错误。提示?

最佳答案

试试这个 -

在您的cellForRowAtIndexPath 方法中,您可以分别添加点击手势和长按手势,然后实现它们。通过这种方式,您的 didselect 功能将不再需要,您也不必 deSelect 任何东西。

UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(cellTapped:)];
tapGestureRecognizer.numberOfTapsRequired = 1;
tapGestureRecognizer.numberOfTouchesRequired = 1;
cell.tag = indexPath.row;
[cell addGestureRecognizer:tapGestureRecognizer];


UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc]
initWithTarget:self action:@selector(handleLongPress:)];
lpgr.minimumPressDuration = 1.0; //seconds
[cell addGestureRecognizer:lpgr];

cell.selectionStyle = UITableViewCellSelectionStyleNone;

现在,

-(void)handleLongPress:(UILongPressGestureRecognizer *)longPress
{
// Your code here
}

-(void)cellTapped:(UITapGestureRecognizer*)tap
{
// Your code here
}

关于iphone - 具有多个手势的 UITableViewCell : long-press and tap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18427754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com