问题描述
我在更新 NSLayoutConstraint
常量值时遇到一个奇怪的问题。
我有一个带有自定义 UIView 的视图控制器(充当底部工作表/卡片)。
在我的 UIView
类中,我根据附加的 UIPanGestureRecognizer
更新视图高度约束。这完美地工作。一旦手势结束,我就会将高度约束动画化为特定值。此时,应用程序完全冻结,没有崩溃报告。更奇怪的是,它只在特定设备上冻结:例如 iPhone Pro 11 Max / Pro、iPhone X。它可以在 iPhone SE 或 iPad 上无缝运行。
有人知道发生了什么吗?
解决方法
经过数小时的调试。希望这对某人有所帮助:
我的 UIView 在里面使用了一个 UIScrollView。以下行修复了崩溃:
scrollView.contentInsetAdjustmentBehavior = .always