Agregue la guía de layout superior en el file NIB (XIB)

¿Cómo puedo agregar la guía de layout superior en el file NIB o cómo puedo especificar el espacio desde la barra de navigation superior y la barra de estado para que no genere un problema entre ios 6 e iOS 7?

Puede hacer esto implementando una nueva propiedad llamada edgesForExtendedLayout en el SDK de iOS7

-(void)viewDidLoad { if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) self.edgesForExtendedLayout = UIRectEdgeNone; } 

o

Si está utilizando la barra de navigation y xcode5, entonces …

En Interface Builder, select el controller de vista y luego navegue hasta el inspector de attributes. En "Extender bordes". verifique debajo de barras superiores

He resuelto mi problema desde aquí

Creo que necesitas escribir esta condición para eso

  float SystemVersion=[[[UIDevice currentDevice] systemVersion] floatValue]; if(SystemVersion<7.0f) { //Currently your app is running in IOS6 or older version. So you need not to do anything. } else { // Currently your app is running in IOS7. } 

Lo estoy haciendo programáticamente.
porque debes verificar tanto los tamaños de marco para ios 7 como para otros.
porque para la barra de estado debe administrar 20 píxeles en iOS 7 y otros.
Por lo tanto, simplemente coloque Ver en XIB como desee en cualquier IOS y para otros puede administrar con este …

 CGSize result = [[UIScreen mainScreen] bounds].size; if(result.height == 480) { NSArray *vComp = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."]; if ([[vComp objectAtIndex:0] intValue] >= 7) { NSLog(@"Ios7 resize the frame"); } else { } } if(result.height == 568) { NSArray *vComp = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."]; if ([[vComp objectAtIndex:0] intValue] >= 7) { NSLog(@"Ios7 resize the frame"); } else { } 

Espero que esto ayude….

Mi solución es hacer un guión gráfico para cada ViewController y colocar un ViewController en el guión gráfico. El método UIStoryboard # instantiateInitialViewController puede instanciar ViewController.

No olvide verificar el controller de vista inicial en Storyboard.

introduzca la descripción de la imagen aquí

No uso el file xib para ViewController más. Intenté colocar un ViewController en xib e instanciarlo. Pero parece imposible.

No me gusta colocar muchos ViewControllers en un file de storyboard. Eso genera conflictos en el desarrollo del equipo. Creo que es una buena solución para hacer un file storyboard para cada ViewController.

[Adición Nov 17 '16] El file Xib no es compatible con la Guía de layout. Entonces uso storyboard en lugar de xib.