介绍:在iOS7中,UIViewController引入了一个新的属性:edgesForExtendedLayout。这个属性的默认值是UIRectEdgeAll。当容器是UINavigationController的时候,默认布局是从状态栏的顶部开始的。
遇见问题:比如创建一个UILabel控件label,label.frame = CGRectMake(10,0,100,80);[self.view addSubview:label;基本代码写完执行运行程序,会发现label部分被导航栏遮挡住了。
两种解决方法:第一种:设置UIViewController的edgesForExtendedLayout属性为UIRectEdgeNone。self.edgesForExtendedLayout = UIRectEdgeNone;
第二种:导航栏半透明属性设置为NO。self.navigationController.navigationBar.translucent = NO;