我知道我可以通过编程方式更改约束,我知道我可以改变特征。
我在图像视图中处理两个奇怪的图像,我似乎无法在Ib中完美排列使用各种特性。我只需要以编程方式更改一个约束,具体取决于设备是iPhone 6,6plus还是其他任何东西。
我认为我可以在View中加载这样的东西:
这给了我一个错误,因为我没有正确设置屏幕大小,我试图以纵向使用iPhone 6的数字点值。
if UIScreen.mainScreen.bounds.size == (CGSize: 414.width, 736.height) { //change Ib outtled constraint to x
}
我正走在正确的轨道上吗?是否有更简单的方法来改变设备的单个约束?
感谢任何建议。
答案 0 :(得分:2)
正确的方法是检查UIScreen,虽然我倾向于使用不等式和常量并且独立检查宽度和高度:
$webconfig = @(Get-Project).ProjectItems |
Where-Object { $_.Name -eq "Web.config" }
$webconfig.Properties("LocalPath").Value # path for web.config
$webdebugconfig = $webconfig.ProjectItems |
Where-Object { $_.Name -eq "Web.Debug.config" }
$webdebugconfig.Properties("LocalPath").Value # path for web.debug.config
$webreleaseconfig = $webconfig.ProjectItems |
Where-Object { $_.Name -eq "Web.Release.config" }
$webreleaseconfig.Properties("LocalPath").Value # path for web.release.config
请记住,在多任务模式的iPad上,您最终可能会看到一个窄而高的屏幕,因此您可能希望仅根据宽度进行任何宽度约束更改,无论您是否也有更小的高度。这也是你想要使用不等式而不是检查特定屏幕尺寸的原因。