在我的iPhone应用程序中,当我旋转iPhone时,我在内容视图中有一个视图(让我们称之为RectangleView)以及它的所有子视图。因此,当手机从横向模式旋转到纵向模式时,我希望RectangleView(及其所有子视图)保持原始形状和相对位置的位置,但只是变小。我在Interface Builder上使用自动调整及其所有子视图来尝试执行此操作。
现在问题就在于此。旋转手机时,所有RectangleView的子视图都会相对于整个内容视图进行缩放和移动,而不是相对于其父视图(即RectangleView)。这是一个问题,因为内容视图现在是一个与之前(横向)不同的形状(纵向),因此当它们应该在RectangleView中缩小时,屏幕上的所有元素都位于错误的位置。我很困惑,因为其中一些元素甚至移出RectangleView,我甚至不知道这是可能的,因为它们应该包含在RectangleView中。
任何人都可以解释这里可能会发生什么,以及我如何只是缩放RectangleView及其所有子视图以保留其原始形状和位置,但只是在较小的范围内?提前谢谢!
答案 0 :(得分:0)
你确定它们正在移出RectangleView,并不是RectangleView正在调整大小并填充内容区域吗?此外,我不确定它是否有所作为,但我发现我需要在轮换后调用[view setNeedsDisplay]
以使我的自定义视图正常工作。