2012-01-02 13 views
17

Tengo algunos UIViewControllers de mi antiguo proyecto iOS4, están usando .xib, creado en el constructor de interfaz.iPhone IOS5 Storyboard, ¿cómo cargar un UIViewController con un archivo .xib personalizado?

Mi nuevo proyecto, creado para iOS5, usa guiones gráficos.

Estoy tratando de agregar un UIViewController al guión gráfico, pero tengo que usar un XIB personalizado que ya tengo. Establecí la identidad del controlador en el inspector de identidad (en el constructor de interfaz), pero no estoy seguro de cómo pedirle al controlador que cargue un .xib personalizado .

¡Se agradece cualquier ayuda!

PS. Hasta la fecha, pude solucionar esto creando una clase "contenedora" para los propósitos del guión gráfico, y hacer que esa clase tenga otro UIViewController. Pero esto un poco derrota el punto de un guión gráfico.

Respuesta

19

Se puede copiar el contenido de la xib en el guión gráfico y luego instanciarlo usando:

- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier 

después de establecer el identificador en él. Si necesita la instancia del guión gráfico, puede obtenerlo de esta manera:

[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
+0

¿No es más simple copiar los contenidos .xib a su archivo principal del guión gráfico? – LordTwaroog

+0

Sí, eso es lo que le dije que hiciera. Tenga en cuenta que también puede obtener el guión gráfico de cualquier UIViewController de la propiedad del guión gráfico. –

+0

Después de jugar con los contenedores y el orden del tipo de mierda de viewDidLoad, me complace copiar la interfaz y conectarla manualmente, aunque esto es lo que esperaba evitar. –

-12

No puede mezclar xibs y guiones gráficos en su proyecto; es uno de los otros, me temo.

+8

Esto es falso. Puedes tener xibs y storyboards. – OlivaresF

1

La respuesta de Mike K es falsa.

Si bien la mezcla de XIB y Storyboards realmente no resuelve el problema de Alex, es bastante posible de hacer dentro del mismo proyecto.

Ver: https://stackoverflow.com/a/8516479/1309238 re: cargar un segundo guión gráfico.

No estoy seguro de si es aconsejable incluir un "Guión gráfico principal" en su Resumen de objetivos si planea hacerlo, pero si ha cargado un XIB en lugar de un guión gráfico para empezar, puede modificar el código vinculado arriba para cargar el guión gráfico después del XIB.

No estoy seguro de si puedes saltar al medio de un guión gráfico desde un XIB, que puede haber sido lo que Mike quiso decir.

Cuestiones relacionadas