我的topView中有2个视图(例如bottomViewUIViewController),顶部是topView。两种视图都带有aspect ratio约束。 topViewbottomView之间有0个垂直间距。我想在特定情况下隐藏bottomView。但是问题是我没有height约束。我在topViewbottomView之间只有垂直空间约束。所以我决定将bottomView移到topView下。我试图在视图控制器的viewDidLayoutSubViews中执行以下操作

self.verticalSpaceConstraint.constant = -1*[bottomView intrinsicContentSize].height;


self.verticalSpaceConstraint.constant = -1*[bottomView bounds].size.height;
intrinsicSize始终返回(1,1),bounds始终返回(0,0,320,568)。我该如何实现呢?

最佳答案

您可以同时向视图中添加高度约束(常数值为0)和纵横比约束,但是这些约束应该具有不同的优先级,而优先级为1000(必填)。然后,要隐藏视图,只需以编程方式将宽高比约束的优先级设置为低于高度约束,反之亦然即可显示它。希望这可以帮助

09-26 19:58