ios - 使背景图像和自动布局失败居中

  显示原文与译文双语对照的内容
0 0

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

enter image description here

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

enter image description here

所以我可以做些什么来排列与背景图像的位置相关的小人? 我已经做了很多事情,比如选择背景图片和一个小人,选择编辑器>> 水平间距。 无效。无论设备方向如何,都可以保留相对位置。 还是我不需要'自动布局'就走? 2nd 最好的选择不是定位背景图片。 但是当用户改变方向时应用程序看起来不会很好。

时间: 原作者:

0 0

将小的图片嵌入背景图片 ( 将全部嵌入容器 UIView )

坐标始终相对于外部容器

原作者:
0 0

通过将它们放入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);
}
}

那是最好的结果。

原作者:
...