gpt4 book ai didi

iphone - 限制父 View 内的 View

转载 作者:可可西里 更新时间:2023-11-01 03:28:10 26 4
gpt4 key购买 nike

我正在尝试使用 touches moved 方法将一个 UIView - “A”( subview )移动到另一个 UIView - “B”(SuperView)中。我能够将 UIView 移到 super View 之外。我想将 UIView 限制在 Superview 范围内。有什么方法可以有一个通用方法来测试 subview 是否在父 View 的可见矩形内???

最佳答案

听起来您想限制 subview (viewA) 的移动始终完全包含在父 View (viewB) 中。 CGRectContainsRect 是正确的答案,但必须谨慎应用,因为 subview 框架是在其父 View 的坐标系中指定的。

// inside touches moved, compute the newViewAFrame based on the movement
// but only assign it if it meets the containment constraint:

if (CGRectContainsRect(viewB.bounds, newViewAFrame)) {
viewA.frame = newViewAFrame;
}

请注意,我们没有在检查中提及 viewB.frame。 viewB 在其父级中的位置与 viewB 是否包含 viewA 无关。

关于iphone - 限制父 View 内的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11896245/

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