-[<CALayer: 0x5584190> display]: Ignoring bogus layer size (255211754908294243945860531626574872576.000000, 340282346638528859811704183484516925440.000000)
任何人都可以告诉我这个警告是什么?该应用程序在某些显示此设备的设备上崩溃..
任何建议都会有很大帮助。
答案 0 :(得分:10)
我认为这是因为图层太大而造成的,我希望这会导致问题缓冲到图像上进行绘图。
我有一个大型UIView的问题,图形相对简单,并使用CATiledLayer解决了它
为此,请在UIView子类中包含以下内容以启用平铺:
+ (Class)layerClass {
return [CATiledLayer class];
}
答案 1 :(得分:4)
我刚刚在弹出窗口中显示的视图控制器中遇到此错误。弹出窗口时出现“忽略虚假图层大小”错误,因此视图控制器中的文本字段无法呈现其文本。
就我而言,将textField.becomeFirstResponder()
来电从viewWillAppear
移至viewDidAppear
可以解决问题。
答案 2 :(得分:2)
我花了一点时间试图找到类似问题的答案,我得到了:
[<CALayer: 0x37d540> display]: Ignoring bogus layer size (nan, nan)
但仅限于设备上,而不是模拟器上。
我的问题是由于我正在从applicationCacheDirectory
加载图像,事实证明文件在我的项目主管中混合了大小写。但是在设备上的Cache目录中,它们都被改为小写。希望这可以帮助将来的某个人。
答案 3 :(得分:1)
使用* UISegmentedControl时我遇到了同样的错误,我使用这种方法自定义文本:
[segmentedControl setTitleTextAttributes:(@{UITextAttributeFont: [UIFont regularFontWithSize:13.f],
UITextAttributeTextColor: controlsSelectedColor,
*UITextAttributeTextShadowOffset:* **@0**}) forState:UIControlStateNormal];
该错误也仅发生在设备上,并且是由于不正确的attributionText参数 UITextAttributeTextShadowOffset 我已经设置了一个 NSNumber ,但是根据documentation它应该是 UIOffset 结构包裹着 NSValue 。 我已将其更改为 [NSValue valueWithUIOffset:UIOffsetZero] 并且它有效。 问题是为什么它在模拟器上不起作用。
因此,如果您已使用它,请检查您的属性文本。它可能就是这样的魔力。
希望这会有所帮助。
答案 4 :(得分:1)
我在使用嵌入导航控制器的TableViewController时遇到了这个问题。从节目(推)改为显示(细节)修正了它。确保并清洁。
答案 5 :(得分:0)
使用-UIViewShowAlignmentRects YES
作为启动变量时出现此问题。当我关闭它时,问题就消失了。 Xcode中的错误?