Ios 使用视图控制器自定义UIView旋转
我有一个界面,它由两个视图组成,在横向模式下,分别位于屏幕的左侧和右侧。现在,当旋转到纵向时,视图应该彼此重叠,并根据设备方向旋转(我希望ASCII艺术有助于显示我的意思,当用户顺时针旋转设备时,这应该发生) 屏幕本身不应旋转,只应旋转视图。我可能可以通过在自动旋转时交换视图来解决这个问题,但是在切换视图时会出现可见的中断Ios 使用视图控制器自定义UIView旋转,ios,uiview,uiviewcontroller,rotation,Ios,Uiview,Uiviewcontroller,Rotation,我有一个界面,它由两个视图组成,在横向模式下,分别位于屏幕的左侧和右侧。现在,当旋转到纵向时,视图应该彼此重叠,并根据设备方向旋转(我希望ASCII艺术有助于显示我的意思,当用户顺时针旋转设备时,这应该发生) 屏幕本身不应旋转,只应旋转视图。我可能可以通过在自动旋转时交换视图来解决这个问题,但是在切换视图时会出现可见的中断 当我想让两个视图分别旋转时,我该怎么做呢?我在viewwillrotateTorientation:中使用动画实现了类似的效果。本质上,我的想法是在一个动画中移动每个视图的中
当我想让两个视图分别旋转时,我该怎么做呢?我在
viewwillrotateTorientation:
中使用动画实现了类似的效果。本质上,我的想法是在一个动画中移动每个视图的中心(或者,在相同的情况下,帧),该动画甚至在检测到旋转时开始
我的方法的困难在于,我还需要在视图中移动子视图,因为子视图在移出屏幕或卸载时并不总是通过视图旋转方向:
获得信息
对于上面的描述,可以使用自动调整大小掩码(在IB中或以编程方式)锚定左上角或A和B的右下角。不过,如果你想像我一样拥有更多的异国情调,那就尝试使用动画。谢谢你的建议,这就是我目前正在做的。但是移动视图的中心会使一个视图“飞越”另一个视图。我希望得到的是两个视图的印象,它们是静态放置的,并根据设备方向旋转。然后我相信锚定适当的角点是正确的做法。我在一个示例项目中尝试了这一点,但不幸的是,也没有给出预期的结果。它实际上适用于两个视图中的一个(因为它是方形的),但另一个视图仍然需要调整大小。我想为了达到我需要的效果,我必须手动管理视图转换,并在视图控制器上完全禁用自动旋转。我不知道这是不是一条路。
-----
------- | A |
| A B | => | B |
------- -----