将部署目标设置为iOS 9的iOS项目中的以下代码会引发以下错误:
'MyMainHomeViewController'没有可见的@interface声明选择器'preferredStatusBarStyle:'
@implementation MyMainHomeViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self preferredStatusBarStyle:UIStatusBarStyleLightContent];
}
@end
为什么ViewController中没有名为preferredStatusBarStyle
的方法?
Xcode编译器(clang-llvm)似乎暗示应该存在,如下面的屏幕截图所示:
答案 0 :(得分:0)
为什么ViewController
中没有名为preferredStatusBarStyle的方法
因为没有这样的方法!它是read-only property,声明为:
@property(nonatomic, readonly) UIStatusBarStyle preferredStatusBarStyle;
所以你可以获取该属性,你可以覆盖该属性,但你的代码没有意义,编译器正确地告诉你。