gpt4 book ai didi

ios - UICollectionView hitTest -> 正常行为

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:03 30 4
gpt4 key购买 nike

我覆盖了 hitTest,效果很好。我希望它表现得好像我在某些条件下没有覆盖此方法,这就是问题所在。

我正在使用子类 UICollectionView 来使用自定义 UICollectionViewLayout 实现在 MKMapView 上呈现单元格。我需要覆盖 UICollectionView 子类中的 hitTest,以便可以将触摸事件传递给 mapView 并可以滚动它。一切正常。

我有一个切换机制,可以在我的 UICollectionViewLayout( map )和 UICollectionViewFlowLayout(将 map 上的项目动画化为网格格式)之间进行动画处理。这也很好用,但是当我显示流布局时,我希望用户能够像正常滚动一样滚动 UICollectionView(就像没有覆盖 hitTest 一样)。我不知道要在 hitTest 中返回什么以使其成为默认行为。

-(UIView*)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
if(self.tapThrough == YES){
NSArray *indexPaths = [self indexPathsForVisibleItems];
for(NSIndexPath *indexPath in indexPaths){
UICollectionViewCell *cell = [self cellForItemAtIndexPath:indexPath];
if(CGRectContainsPoint(cell.frame, point)){
return cell;
}
}
return nil;
} else {
return ???
}
}

我试过退回很多东西。 selfself.superview 等...没有什么能让它正常运行(我无法上下滚动单元格)。

最佳答案

如果您想要 HitTest 的正常行为:

return [super hitTest:point withEvent:event];

这将返回 HitTest 未被覆盖时通常返回的内容。

关于ios - UICollectionView hitTest -> 正常行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24276744/

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