我有一个应用程序在iOS 9上的应用程序商店中正常运行。在设备上的iOS10测试版和Xcode 8模拟器中,当其中一个选项卡被点击时,它会崩溃。
它与错误
崩溃[PXPlaceholderView titleLabel]:无法识别的选择器发送到实例
屏幕(DiaryItemsViewController)使用的.xib文件引用了PXPlaceholderView(一个UIView子类) PXPlaceholderView具有initWithFrame和initWithCoder方法,似乎无法在iOS10上调用
在主屏幕(DiaryItemsViewController)中,我可以在PXPlaceholderView上设置背景确定,但无法设置插座
[self.placeholderView setBackgroundColor:[UIColor redColor]]; //works ok
self.placeholderView.titleLabel.text = NSLocalizedString(@"No Diary Entries", nil); //crashes
占位符视图中的出口似乎在xib中正确设置并在Xcode 7 / ios 9中找到工作
PXPlaceholderView是DiaryItemsViewController的一个出口
@property (weak, nonatomic) IBOutlet PXPlaceholderView *placeholderView;
我对iOS10中发生的变化感到有点担心导致崩溃
答案 0 :(得分:0)
如果PXPlaceholderView是UIView的子类,那么它何时获得titleLabel属性?这是您的问题,因为代码正在向您的PXPlaceholderView实例发送titleLabel消息,但它没有与该名称匹配的属性。
答案 1 :(得分:0)
重命名Placeholder类修复了此问题