Autolayout与imageview在肖像和风景

时间:2014-03-15 07:45:10

标签: ios autolayout

我是autolayout的初学者。 我目前正面临着关于布局图像的问题。我试图通过添加约束来解决这个问题,但我不知道如何解决这个问题。 有一个图像视图从屏幕的一端延伸到另一端。它对于肖像模式工作正常,但是当我切换到横向时,框架是固定的。我试图做一个方面填充,但这似乎也不起作用。 如何将图像拉伸到最终以适应横向。当方向发生变化时,我应该使用其他图像吗? 下面的图片展示了我得到了什么以及我需要什么?有人可以帮忙吗?

由于 enter image description here

2 个答案:

答案 0 :(得分:0)

将此条件置于viewddidload以及viewwillappear

if ([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeLeft || [[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeRight)

{//LANDSCAPE
YOURIMAGEVIEW SETFRAME HERE

}else{
//PORTRAIT
YOURIMAGEVIEW SETFRAME HERE
}

答案 1 :(得分:0)

在autolayout中尝试从类文件中设置imageView的框架不会起作用,因为它会与对象的约束属性冲突。

相反,您希望设置常量,以便对象的对齐边始终接触视图的一侧。

首先,我建议选择imageView对象并清除当前约束

ToClearConstraints

然后,在选择对象时,通过将LHS和RHS距离的约束添加到其保持视图来手动设置约束。

Set the LHS and RHS constraints to holding view =0 on both side

使用界面构建器/实用程序面板更改和设置属性是设置此自动扩展操作的最佳方法。

约束也可以以编程方式设置(如果您想要自定义动画等,这很有用),但是,通过玩弄IB上的约束,您最终会掌握它。

我希望这会有所帮助。

干杯,吉姆。