ios – 以编程方式创建“与最近邻居的间距”约束

我正在构建的部分屏幕包含一个包含n个视图的部分.我正在代码中生成这些视图 – 它们是简单的UIView子类.

我正在为此屏幕使用AutoLayout约束,我希望每个视图自动将其自身定位在其上方视图下方15px左右.

Xcode中,可以创建一个spacing to nearest neighbor constraint,这似乎完全符合我的要求.

但是,我似乎无法找到任何显示如何在代码中创建它的示例.

是否可以通过编程方式创建“最近邻居间距”约束?

解决方法

您可以创建约束字典和约束字符串并以编程方式应用它们.

将项目和键添加到字典是微不足道的,所以我不会处理它.只需记住约束系统中的每个视图都必须在字典中.

创建格式字符串是有趣的.大概你想在某些视图下添加你的视图,比如它有NSString键topView.格式字符串的第一部分看起来像

NSString *constraintBase = [NSString stringWithFormat:@"V:topView"];

对于要添加的每个视图,添加到该字符串

NSString *constraintString = [constraintBase stringByAppendingString:[NSString stringWithFormat:@"-15-%@",viewDictionaryKey]];

最后像往常一样应用constraintString,一个构造的视觉约束格式字符串.

[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:constraintString options:0 metrics:nil views:viewsToConstrain]];

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...