1

我撞在砖墙上。是否可以获得从 AutoLayout XIB 生成 的视觉格式语言?

我希望在代码中模拟 XIB 等效项。

4

1 回答 1

6

当您 NSLog 约束时,日志以可视格式语言显示它们。

NSLog(@"%@", self.view.constraints) ;

我在 Interface Builder 中创建了一个 UIButton 并将其拖到视图的右上角, 这是 NSLog:

"<NSLayoutConstraint:0x75b19f0 H:[UIRoundedRectButton:0x75ae6a0]-(NSSpace(20))-|   (Names: '|':UIView:0x75ae560 )>",
"<NSLayoutConstraint:0x75b1a50 V:|-(NSSpace(20))-[UIRoundedRectButton:0x75ae6a0]   (Names: '|':UIView:0x75ae560 )>"

它们与使用视觉格式语言创建约束相同:

H:[button]-20-|
V:|-20-[button]

如果您对可视化格式语言足够熟悉,您应该能够用该语言表达您能想到的大多数约束,而无需在 Interface Builder 中创建它们并对其进行逆向工程。如果存在您无法在代码中构建的约束,请告诉我。

于 2013-03-19T16:29:57.287 回答