ios – 嵌套的UIStackViews破坏约束

我有一个复杂的视图层次结构,内置在Interface Builder中,嵌套的UIStackViews.每当我隐藏我的内部堆栈视图时,我都会收到“不能令人满意的约束”通知.我已经跟踪到这一点:
(
    "<NSLayoutConstraint:0x1396632d0 'UISV-canvas-connection' UIStackView:0x1392c5020.top == UILabel:0x13960cd30'Also available on iBooks'.top>","<NSLayoutConstraint:0x139663470 'UISV-canvas-connection' V:[UIButton:0x139554f80]-(0)-|   (Names: '|':UIStackView:0x1392c5020 )>","<NSLayoutConstraint:0x139552350 'UISV-hiding' V:[UIStackView:0x1392c5020(0)]>","<NSLayoutConstraint:0x139663890 'UISV-spacing' V:[UILabel:0x13960cd30'Also available on iBooks']-(8)-[UIButton:0x139554f80]>"
)

具体来说,UISV间距约束:当隐藏UIStackView时,它的高约束得到一个0常量,但这似乎与内部stackview的间距约束冲突:我的Label和Button之间需要8个点,这与隐藏约束不可调和,所以约束崩溃.

有没有解决的办法?我已经尝试递归隐藏隐藏的堆栈视图的所有内部StackViews,但这会导致内容浮出屏幕的奇怪动画,并导致严重的FPS丢失启动,同时仍然无法解决问题.

解决方法

理想情况下,我们可以将UISV间距约束的优先级设置为较低的值,但似乎没有办法.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...