我正在使用iOS 7解决状态栏问题 
  
  
 
if(st.version == 7)
{
    CGRect screen = [[UIScreen mainScreen] bounds];
    CGRect frame = self.navigationController.view.frame;
    frame.origin.y = 20;
    frame.size.height = screen.size.height - 20;
    self.navigationController.view.frame = frame;
} 
 因为我正在使用导航控制器并使用[self.navigationController pushViewController:newone animated:YES];从一个推送到另一个.它适用于所有视图控制器.但是,如果viewcontroller在xib中有mkmapview,则会出现ios 7的状态栏问题.
如果我删除mapview表单xib并推送到该视图控制器意味着,它就像是,
如果我通过下面的代码添加mapview,
mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0,100,320,100)]; [self.view addSubview:self.mapView];
看起来像,
怎么解决这个?
解决方法
 如果在viewWillAppear中添加mapView,请在viewDidAppear中替换它. 也许你有这个问题,因为在你的视图完全设置之前你正在用视图的框架进行操作