【问题标题】:How to check if a swipe is within the bounds of a stack View如何检查滑动是否在堆栈视图的范围内
【发布时间】:2017-06-20 02:19:03
【问题描述】:

堆栈溢出,

我正在尝试检查嵌套堆栈视图中是否发生滑动。在我的特定示例中,我具有以下层次结构:

  • 第一个堆栈视图
    • 第二个堆栈视图
      • 标签
      • 标签

我想获取第二个堆栈视图的坐标并确保用户在该框内滑动。如何做到这一点?

谢谢, 大密码

【问题讨论】:

  • 您是否尝试在第二个滑动视图中添加滑动?
  • 我猜你需要禁用First Stackview的交互

标签: ios swift xcode


【解决方案1】:

最简单的选择是将UISwipeGestureRecognizer 附加到第二个 Stackview。它只会在用户平移该区域时触发。

另一种选择是将UISwipeGestureRecognizer 附加到堆栈的更上方,并使用提供的方法来测试手势的位置是否在视图内。

下面是UISwipeGestureRecognizer触发的动作的实现:

@IBAction func gestureActivated(_ sender: UISwipeGestureRecognizer) {
    let location = sender.location(in: secondStackView)
    if secondStackView.point(inside: location, with: nil) {
        print("Hit Second Stackview")
    } else {
        print("Outside Second Stackview")
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-07
    • 2018-04-21
    • 2011-06-29
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2017-07-13
    • 1970-01-01
    相关资源
    最近更新 更多