gpt4 book ai didi

ios - 在 hitTest :withEvent: 拦截 UIControlEventTouchUpInside

转载 作者:行者123 更新时间:2023-11-29 11:20:40 25 4
gpt4 key购买 nike

我关注了this great tutorial我终于设法实现了一个 3 个独立行的可滚动界面。

不过我还有一个问题,因为该教程的关键是方法的使用:

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event 
{
NSLog(@"in hitTest");
if ([self pointInside:point withEvent:event]) {
return _scrollView;
}
return nil;
}

即使在 ScrollView 区域之外也能处理滚动。事实上,我的行中充满了 UIButtons,它们的 TouchUpInside 事件与点击事件混在一起了。有没有办法让这个方法识别这些事件并拒绝它们,让它们传播给合法的委托(delegate)?

最佳答案

您可能应该按如下方式实现 -hitTest:withEvent: 方法:

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *superView = [super hitTest:point withEvent:event];

if (superView == self)
return _scrollView;

return superView;
}

这将允许在 UIScrollView 的 subview 内进行交互。

关于ios - 在 hitTest :withEvent: 拦截 UIControlEventTouchUpInside,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7381717/

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