Ios Swift UIView从堆栈视图中消失

Ios Swift UIView从堆栈视图中消失,ios,uistackview,Ios,Uistackview,我有一个标签、一个图像视图和一个垂直堆栈视图中的按钮。路线设置为“填充”,分布设置为等间距,偏移为10。在我的故事板上,标签显示在顶部,图像显示在中间,按钮显示在底部 但是,当在模拟器或设备上运行时,UIView会从视图中完全剥离,因此标签会显示在屏幕顶部,而按钮会直接显示在标签下方 我的唯一约束是在superview的堆栈视图上设置的 编辑:忘记提及UIImageView位于UIView内部在UIView边框上设置Y约束导致其在点击播放按钮时出现,但超出了屏幕边界 我必须在UIView上设置

我有一个标签、一个图像视图和一个垂直堆栈视图中的按钮。路线设置为“填充”,分布设置为等间距,偏移为10。在我的故事板上,标签显示在顶部,图像显示在中间,按钮显示在底部

但是,当在模拟器或设备上运行时,UIView会从视图中完全剥离,因此标签会显示在屏幕顶部,而按钮会直接显示在标签下方

我的唯一约束是在superview的堆栈视图上设置的


编辑:忘记提及UIImageView位于UIView内部

在UIView边框上设置Y约束导致其在点击播放按钮时出现,但超出了屏幕边界


我必须在UIView上设置大小限制,以便它正确显示。

我也遇到了类似的问题。UIStackView中的UIView只有一个宽度约束,在运行时会消失。我发现我可以使用以下任一选项使其再次显示:

  • 添加高度约束
  • 添加顶部和底部约束

我在stackview中的tableview中遇到了同样的问题。在视图中添加了高度约束,现在一切正常

图像视图是否包含图像?如果为空,则可能分配零维。图像视图与其包含的
UIView
之间是否存在任何约束?这两个视图之间没有约束,因为我忽略了它,但我现在已将imagview固定到UIView,它仍然没有出现。图像为空,但在点击播放按钮时设置。UIView本身也不显示(我使用它是为了在UIImage动画时显示UIImage周围的静态边框)必须在UIView上设置大小限制。我有一个直到运行时才会设置的imageview。。它总是会消失。。。另一方面,在编译时设置图像将正确显示图像。顺便说一句,只有高度或顶部/底部约束并不能解决我的问题。。在我的例子中,我还必须使用宽度约束,只需添加高度约束