Ios 居中背景图像和自动布局失败

Ios 居中背景图像和自动布局失败,ios,xcode,Ios,Xcode,我有一个宽度为768像素的背景图像,如下所示。我有几个较小的图像需要放在它们所在的位置。例如,蓝色的需要定位在40120 当用户将设备方向更改为横向时,会出现问题。背景图像位于中心(编辑器>对齐>容器中的水平中心)。因此背景图像在中心水平布置。系统会自动将蓝色图像的x坐标设置为40,而不是背景图像边缘的40像素。所以小家伙被放错地方了。(预期位置显示为白色。) 那么,我该怎么做才能根据背景图像的位置来布置这些小家伙呢?我做了很多事情,比如选择背景图片和相应的小人物,选择编辑器>插针>水平间距

我有一个宽度为768像素的背景图像,如下所示。我有几个较小的图像需要放在它们所在的位置。例如,蓝色的需要定位在40120

当用户将设备方向更改为横向时,会出现问题。背景图像位于中心(编辑器>对齐>容器中的水平中心)。因此背景图像在中心水平布置。系统会自动将蓝色图像的x坐标设置为40,而不是背景图像边缘的40像素。所以小家伙被放错地方了。(预期位置显示为白色。)


那么,我该怎么做才能根据背景图像的位置来布置这些小家伙呢?我做了很多事情,比如选择背景图片和相应的小人物,选择编辑器>插针>水平间距。什么都不管用。在这种情况下,无论设备方向如何,是否可以保持相对位置?或者我应该不使用“自动布局”吗?第二个最佳选择是不定位背景图片。但是当用户将方向更改为横向时,应用程序的外观将不好。

将小的嵌入背景图像(将所有内容嵌入到容器视图中!)


坐标始终是相对于外部容器的

我将它们放在UIScrollView组中,然后将它们作为一个整体移动,如下所示

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation) interfaceOrientation duration:(NSTimeInterval)duration {
if (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
{
    uiscrollview1.Frame=CGRectMake(uiscrollview1.frame.origin.x, uiscrollview1.frame.origin.y, uiscrollview1.frame.size.width, uiscrollview1.frame.size.height);
}
else
{
    uiscrollview1.Frame=CGRectMake(uiscrollview1.frame.origin.x+128, uiscrollview1.frame.origin.y, uiscrollview1.frame.size.width, uiscrollview1.frame.size.height);
}
}

这是目前为止最好的结果。

谢谢你的建议。如果我把这些小家伙放在UIScrollView组中,他们就不能作为一个整体定位在中心。如果我把它们放在UIView组中,情况会更糟。我甚至不知道scrollview组:D从屏幕截图上看,你想将所有视图作为一个整体移动。那么,为什么没有一个固定大小的视图(居中但不可调整大小)来包含其余的视图呢?