UITraitCollection 中的断言失败 * _Nonnull 从 -traitCollection 返回 nil,这是不允许的? 当我尝试在 ios 13 中运行 Xcode 11 beta 时,它崩溃了。我不知道出了什么问题。
最佳答案
[ super 初始化]
我遇到这个问题是因为我的代码库中一位未透露姓名的前编码员(我经常咒骂他)没有调用 [super init]
在实现 UITraitEnvironment
的类上(又名 UIView
或 UIViewController
)!
如果我能在五年前挥舞战锤,我会的。
此实现位于 UIViewController
的子类中...
- (id)initWithStartPositionPdf:(float)startPosition withScrollViewHeight:(float)scrollViewHeight {
_startPosition = startPosition;
_scrollViewHeight = scrollViewHeight;
self.isPdfView = YES;
return self;
}
已更新为...
- (instancetype)initWithStartPositionPdf:(float)startPosition withScrollViewHeight:(float)scrollViewHeight {
self = [super initWithNibName:nil bundle:nil];
_startPosition = startPosition;
_scrollViewHeight = scrollViewHeight;
_isPdfView = YES;
return self;
}
并解决了我在 Xcode 11/iOS 13 中开始收到的崩溃问题。
关于ios - 从 -traitCollection 返回 nil,这在 Xcode 11 Beta 中是不允许的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58362542/