移动子视图时移动超级视图 - 目标C

时间:2013-07-26 07:13:25

标签: ios cocoa-touch uiview

我有一个超级UIView,其中有一个子UIView。子UIView包含UIPanGestureRecognizer

当用户尝试移动UIView时,我需要移动超级subUIView

我不想将中心设置为会产生混蛋。

当用户尝试移动子UIView时,我需要顺利移动超级UIView。因为超级UIView正在移动,用户会感觉到他正在移动子UIView

所以,我如何完成这项工作?

2 个答案:

答案 0 :(得分:1)

您可以设置中心以避免混蛋使用UIView动画块

[UIView animateWithDuration:0.5
                         animations:^{
                            //set center here
                         }
                         completion:^(BOOL finished) {

                         }];

答案 1 :(得分:0)

假设您在手势识别器触发时设置subUIView的帧,只需移动超级视图相同的数量

subview.frame = CGRectMake(-x,-y,w,h); //move opposite way to superview
[subview superview].frame = CGRectMake(x,y,w,h); //move

编辑:误解了你想要完成的一些事情,你需要将超级视图移动的相反方式移动子视图,以便子视图在超视图移动时保持原位