如何在重新定位之前重新定位UIView将其子视图保持在相同位置。当我移动UIView时,它的子视图也会被移动。我怎么能避免这种情况。我只是想移动父视图而不是它的子视图。
答案 0 :(得分:1)
由于这不是视图层次结构的工作原理,除非我弄错了,否则无法阻止子视图使用其超级视图移动。
你可以做的是在超级视图移动时重新定位子视图(但不要为其设置动画),这样就会产生不移动的错觉。
我在这些限制范围内执行此操作的方法是获取子视图相对于superview的superview(convertRect:toView:方法)的位置,然后在每次超视图移动时设置框架的原点。