|
|
1
12
您可以使用自动布局来实现这一点。 确保每个子视图都有定义其大小和位置的约束。然后,将父视图的垂直内容拥抱和压缩阻力优先级设置为“必需”。这将根据其子视图的高度和位置定义父视图的高度。
此图显示了父视图(白色),其垂直拥抱和抗压优先级设置在inspector面板中。请注意,父视图为其宽度、x位置和y位置设置了约束,但没有为其高度设置约束。它能够根据子视图的高度和位置推断其高度(请参见下图)。
此图显示了每个子视图的约束。请注意,这些视图的垂直拥抱和抗压优先级为 不 改变。这些视图中的每一个都有x位置和y位置的约束,但您会注意到,并非所有视图都有宽度和高度的约束。标签和开关等视图能够根据其内容自动推断其大小约束。如果不在每个子视图上设置垂直位置约束,AutoLayout将不知道每个子视图需要多少空间,因此它也不知道父视图应该有多高。
|
|
|
2
1
2-将项目/事物添加到视图容器并添加约束。确保添加所有必需约束,并将底部间距添加到内部的底部项目。 这将定义容器视图的高度。
PD:忘记 Content Hugging/Compression and Priority . 它们很方便,但在这里没有用。他们只是设置了一个阻力,使其变大或变小。 |
|
|
Patrick bateman · 情节提要中的Swift堆栈视图 9 年前 |
|
|
Martheli · 带有导航条的多视图控制器 9 年前 |
|
|
Alan · 具有预定义常量值的界面生成器 10 年前 |