如何检查滑动是不是在堆栈视图的范围内
Posted
技术标签:
【中文标题】如何检查滑动是不是在堆栈视图的范围内【英文标题】:How to check if a swipe is within the bounds of a stack View如何检查滑动是否在堆栈视图的范围内 【发布时间】:2017-06-20 02:19:03 【问题描述】:堆栈溢出,
我正在尝试检查嵌套堆栈视图中是否发生滑动。在我的特定示例中,我具有以下层次结构:
第一个堆栈视图 第二个堆栈视图 标签 标签我想获取第二个堆栈视图的坐标并确保用户在该框内滑动。如何做到这一点?
谢谢, 大密码
【问题讨论】:
您是否尝试在第二个滑动视图中添加滑动? 我猜你需要禁用First Stackview的交互 【参考方案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")
【讨论】:
以上是关于如何检查滑动是不是在堆栈视图的范围内的主要内容,如果未能解决你的问题,请参考以下文章
iOS 7 在右侧添加了滑动以将视图控制器从堆栈中弹出。是不是可以通过向左滑动将其添加回来?