今天遇到的小坑 StateBar和tableView的分割线
stateBar
之前在开发app时,在plist里面设置了View controller-based status bar appearance为NO。并且利用了[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]来设置状态栏颜色。后来想改变某个控制器状态栏的颜色时。- (UIStatusBarStyle)preferredStatusBarStyle并没有调用。无法改变状态栏颜色。
解决方法:View controller-based status bar appearance为yes 此时-(UIStatusBarStyle)preferredStatusBarStyle就可以调用,控制控制器状态栏的颜色。但是如果控制器是 UINavigationController的子控制器 - (UIStatusBarStyle)preferredStatusBarStyle并不会调用。因为 UINavigationController 有自己的状态栏,需要自己管理所以它的子类是不会走 preferredStatusBarStyle 方法;如果想要某个VC 改变,可以使用 UINavigationBar.barStyle属性 或者 //隐藏导航栏后 系统会调用 - (UIStatusBarStyle)preferredStatusBarStyle方法navigationController.navigationBarHidden=YES;
cell的分割线
今天自定义了一个Cell发现tableView的分割线没有显示。即使设置了_tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
解决方法:因为自己重写了 -layoutsubview;而没有调用[super layoutView];