gpt4 book ai didi

ios - 如何滚动另一个 UICollectionView 下方的 UICollectionView?

转载 作者:行者123 更新时间:2023-11-30 12:14:16 27 4
gpt4 key购买 nike

enter image description here

这就是我的问题,您在 gif 上看到的 4 个橙色矩形是单个垂直 UICollectionView = OrangeCollectionView。

绿色和紫色“卡片” View 是另一个 UICollectionView = overrideCollectionView 的一部分。

overlayCollectionView 有 3 个单元格,其中一个只是一个空白的 UICollectionViewCell,另外 2 个是卡片。

当overlayCollectionView显示空白的UICollectionViewCell时,我希望能够滚动orangeCollectionView。

override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
guard let superr = superview else { return true}
for view in superr.subviews {
if view.isKind(of: OrangeCollectionView.self) {
view.point(inside: point, with: event)
return false
}
}
return true
}

这允许我滚动 OrangeCollectionView 但是这实际上并不能解决我的问题。我需要能够左右滚动来显示卡片,但是这会阻止所有触摸,因为该点始终落在 OrangeCollectionView 上。

我如何检查它们是否向左/向右滚动以显示卡片?否则,如果它们位于空白单元格上,请上下滚动 OrangeViewController。

最佳答案

也有这个问题...没有找到一个好的方法来做到这一点,但这可行。首先,您需要访问 ScrollView 委托(delegate)方法scrollViewDidScroll()。你可以这样称呼:

if scrollView == overlayScrollView {

if scrollView.contentOffset.x == self.view.frame.width { // don't know which coordinate you need

self.overlayScrollView.alpa = 0
}

}

之后,您将一个空白 View 添加到橙色 Collection View 上。 View 的 alpha 为 0(我想,也许颜色很清晰;尝试一下是否有效)。

在代码中,您可以将 UISwipeGestureRecognizer 添加到刚刚创建的 View 中,并检测是否有向左或向右的滑动。

通过检测滑动方向,您可以简单地将overlayScrollView的contentOffset.x轴更改为0或self.view.frame.width * 2。

抱歉,我无法提供我的工作示例代码,我正在通过手机回答。这不是正确的解决方案,但是当我为大客户制作一个食品应用程序时,它运行得很好,没有人提示:)

关于ios - 如何滚动另一个 UICollectionView 下方的 UICollectionView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45621394/

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