gpt4 book ai didi

iOS Tap 手势状态开始不命中

转载 作者:可可西里 更新时间:2023-11-01 03:26:14 29 4
gpt4 key购买 nike

我已经使用点击手势识别器制作了一个可点击的 View ,它工作得很好。但我想在触摸发生时突出显示 View ,并在触摸结束时将其删除。

我试过这个:

- (IBAction)refresh:(UITapGestureRecognizer *)sender {
if(self.currentStatus == NODATA){
if(sender.state == UIGestureRecognizerStateBegan){
NSLog(@"Began!");
[self.dashboardViewController.calendarContainer state:UIViewContainerStatusSELECTED];
}
if (sender.state == UIGestureRecognizerStateEnded){
NSLog(@"%@", @"Ended");
[self.dashboardViewController.calendarContainer state:UIViewContainerStatusNORMAL];
}
[self setState:REFRESHING data:nil];
}
}

“已结束”的 NSLog 得到显示,但开始没有显示,因此它永远不会被选中。这是为什么?

最佳答案

UITapGestureRecognizer 永远不会进入 UIGestureRecognizerStateBegan 状态。只有 连续 手势(例如轻扫或捏合)才会导致其识别器从 UIGestureRecognizerStatePossible 变为 UIGestureRecognizerStateBegan离散 手势(例如点击)将其识别器直接放入 UIGestureRecognizerStateRecognized,即对于单次点击,直接放入 UIGestureRecognizerStateEnded

也就是说,也许您正在寻找一个 UILongPressGestureRecognizer,它是一个连续识别器,将进入 UIGestureRecognizerStateBegan,让您辨别触摸的开始和结束?

关于iOS Tap 手势状态开始不命中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20068724/

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