在运行时更改基于设备的约束

res*_*ing 3 constraints storyboard ios autolayout

我正在使用Storyboard来设置我的约束.虽然一切都很完美,但我有一些观点,我希望改变仅3.5英寸设备的约束.

这可能吗?我该怎么做?

Nik*_*kin 5

您可以定义宏来确定屏幕大小,如下所示:

#define isiPhone4 ([[UIScreen mainScreen] bounds].size.height == 480)?TRUE:FALSE
Run Code Online (Sandbox Code Playgroud)

稍后在代码中你可以做这样的事情:

if (isiPhone4) {
    self.constraint.constant = NEW_VALUE;
}
Run Code Online (Sandbox Code Playgroud)

要从代码中访问故事板约束,您应该IBOutlets为它们进行操作(控制+将它们拖动到控制器中,就像其他任何东西一样).

在此输入图像描述