我有一个 superUIView
有一个 sub UIView
。潜艇UIView
具有UIPanGestureRecognizer
.
UIView
当用户尝试移动subUIView
.
我不想设置中心,因为那会让人很头疼。
UIView
当用户试图移动 sub 时,我需要平稳地移动 super UIView
。因为 superUIView
正在移动,用户会感觉到他正在移动 sub UIView
。
那么,我该如何完成呢?
我有一个 superUIView
有一个 sub UIView
。潜艇UIView
具有UIPanGestureRecognizer
.
UIView
当用户尝试移动subUIView
.
我不想设置中心,因为那会让人很头疼。
UIView
当用户试图移动 sub 时,我需要平稳地移动 super UIView
。因为 superUIView
正在移动,用户会感觉到他正在移动 sub UIView
。
那么,我该如何完成呢?
您可以设置中心以避免混蛋使用UIView
动画块
[UIView animateWithDuration:0.5
animations:^{
//set center here
}
completion:^(BOOL finished) {
}];
假设您设置了subUIView
手势识别器触发时的框架,只需将超级视图移动相同的量
subview.frame = CGRectMake(-x,-y,w,h); //move opposite way to superview
[subview superview].frame = CGRectMake(x,y,w,h); //move
编辑:误解了你想要完成的事情,你需要以与父视图移动相反的方式移动子视图,以便子视图在父视图移动时保持原位