Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 自动布局如果父视图的高度发生变化,如何将子视图保持在父视图的底部_Ios_Swift - Fatal编程技术网

Ios 自动布局如果父视图的高度发生变化,如何将子视图保持在父视图的底部

Ios 自动布局如果父视图的高度发生变化,如何将子视图保持在父视图的底部,ios,swift,Ios,Swift,我有一个父视图,最初它的高度是250,在该视图的底部我有一个标签,它有底部和左侧约束我想让这个标签始终在这个蓝色视图的底部,但在代码中我更改蓝色视图的高度时,标签不会粘到视图的底部 我正在使用以下代码更改高度 greyView.frame.size.height = greyView.frame.size.height + 200; 如何保持标签在蓝色视图的底部,即使蓝色视图的高度发生变化 我曾尝试重新添加标签底部常量值,但它没有进入底部 @IBAction func buttonClick

我有一个父视图,最初它的高度是250,在该视图的底部我有一个标签,它有底部和左侧约束我想让这个标签始终在这个蓝色视图的底部,但在代码中我更改蓝色视图的高度时,标签不会粘到视图的底部

我正在使用以下代码更改高度

greyView.frame.size.height = greyView.frame.size.height + 200;
如何保持标签在蓝色视图的底部,即使蓝色视图的高度发生变化

我曾尝试重新添加标签底部常量值,但它没有进入底部

@IBAction func buttonClicked(sender: UIButton) {

    greyView.frame.size.height = greyView.frame.size.height + 200;

    bottomMargin.constant = 0;

}
我向标签添加了以下约束

我没有任何问题,在故事板,如果我改变蓝色视图的高度,在故事板标签底部,但当我改变高度,从代码标签不到底部

@IBAction func buttonClicked(sender: UIButton) {

    greyView.frame.size.height = greyView.frame.size.height + 200;

    bottomMargin.constant = 0;

}
它是这样显示的。。
尝试设置这些约束:

右侧和底部锚定在父母身上,体重和高度由你决定,重要的是底部和右侧


您可以忽略我的值,因为这只是一个示例

请尝试设置这些约束:

右侧和底部锚定在父母身上,体重和高度由你决定,重要的是底部和右侧


您可以忽略我的值,因为这只是一个示例,有很多方法可以做到这一点。我不建议以编程方式更改标签视图的高度。将按钮>=的高度约束设置为第一次绘制时的当前值。 这样,当您更改蓝色视图的高度时,它将展开。按钮上还有哪些其他限制

现在的问题是,按钮的约束将保持视图的特定大小

编辑#1 所以我误解了你的问题。我自己也尝试过,但没有足够的时间使用约束提出一个好的解决方案。我禁用了约束,只需使用自动调整大小的遮罩并将其设置为底部,它就会移动(请参见屏幕截图)。约束正在做一些棘手的事情。我回家后会给你找个更好的解决办法。
有很多方法可以做到这一点。我不建议以编程方式更改标签视图的高度。将按钮>=的高度约束设置为第一次绘制时的当前值。 这样,当您更改蓝色视图的高度时,它将展开。按钮上还有哪些其他限制

现在的问题是,按钮的约束将保持视图的特定大小

编辑#1 所以我误解了你的问题。我自己也尝试过,但没有足够的时间使用约束提出一个好的解决方案。我禁用了约束,只需使用自动调整大小的遮罩并将其设置为底部,它就会移动(请参见屏幕截图)。约束正在做一些棘手的事情。我回家后会给你找个更好的解决办法。

为您的约束创建出口并进行更改,以便两者粘在一起。@您能否再解释一下如何更改约束,当我更改高度(如标签底部和右侧约束)时是否需要再次添加所有约束您应该调用
updateConstraintsIfRequired()
更新约束值后。为约束创建出口并进行更改,以便两者粘在一起。@能否再解释一下如何更改约束,当我更改高度(如标签底部和右侧约束)时,是否必须再次添加所有约束更新约束值后,应调用
updateConstraintsIfNeeded()
。使用更新的屏幕截图。。您可以在标签中将底部约束设置为superview。把它按到按钮上。或者将“垂直间距”设置为“按钮”为0。我不想将标签与按钮底部对齐我想将其与蓝色视图底部对齐,我只放置了更改蓝色视图高度的按钮。使用更新的屏幕截图。。您可以在标签中将底部约束设置为superview。把它按到按钮上。或者将“垂直间距”设置为“按钮”为0。我不想将标签与按钮底部对齐我想将其与蓝色视图底部对齐,我只放置了按钮以更改蓝色视图的高度。