2011-12-13 12 views
19

Con la introducción del guión gráfico, no seleccionaría crear un .xib/.nib cuando creo una subclase de UIViewController, porque puedo arrastrar un viewcontroller en el constructor de interfaces y asignarlo a la nueva clase.¿El guión gráfico elimina la necesidad de .nib

Entonces, con el guión gráfico, ¿cuándo necesitaría usar el archivo .xib/.nib?

Gracias.

+0

ive nunca usé el guión gráfico pero ¿no es como un asistente para crear aplicaciones o al menos las vistas? dudo mucho que haya alguna diferencia en las vistas que crea y luego creadas manualmente. Apuesto a que esos archivos xib todavía están allí pero están ocultos –

+0

No está en la jerarquía de archivos, no hay un archivo real en la carpeta raíz. –

Respuesta

11

Supongo que el guión gráfico contiene los archivos .xib/.nib para todas sus vistas. Presenta las relaciones entre ellos y te ayuda a evitar confusiones si tienes MUCHAS vistas. También ahorra tiempo y nervios al escribir código.

+0

Gracias. Ahora me siento más cómodo al ver todos estos tutoriales sobre el uso de .xib –

+5

antes del guión gráfico. Antes de volver a trabajar en toda su interfaz con guiones gráficos, le recomendamos leer la detallada descripción de Jonathan Wight de los problemas que tuvo con la tecnología: http : //toxicsoftware.com/uistoryboard-issues/ –

+1

La URL mencionada en el comentario de Brad Larson parece haberse movido, ahora es http://toxicsoftware.com/uistoryboard-issues.html – JosephH

4

Si usa guiones gráficos, generalmente no necesitará crear archivos .xib separados. Usted puede seguir usando un archivo .xib si lo desea, puede ser útil, p. si tiene una vista particularmente compleja que le gustaría configurar por sí misma. La mayoría de las veces, sin embargo, no habrá necesidad de hacer eso.

+0

No es necesario crear archivos nib, cuando desee volver a usar vistas específicas. Por ejemplo, si tiene algún tipo de vista de calificación (4 de 5 estrellas), ¿cuál quiere ubicar en varios lugares? – Besi

32

Los guiones gráficos no eliminan por completo la necesidad de archivos NIB. Un ejemplo común es cuando se crean subvistas para entrar dentro de un UIScrollView. No puede crear las subvistas por separado en un guión gráfico; en su lugar, debe crear NIB independientes para las subvistas y adjuntarlas a la vista de desplazamiento programáticamente.

De hecho, en casi todas las ocasiones en que necesite una subvista que cambie en el tiempo de ejecución, querrá utilizar NIB por separado.

Los guiones gráficos son geniales para ciertos tipos de aplicaciones, pero para cualquier cosa incluso remotamente complicada, la antigua funciona muy bien todavía. Un beneficio adicional es que coexisten muy bien. Puede colocar vistas de marcador de posición en su guión gráfico y llenarlas programáticamente con vistas definidas NIB más adelante.

+0

+ 1 por ser conciso, preciso y al punto. Por no mencionar que en realidad responde la pregunta. – sean

10

he probado storyboarding últimamente y tengo sentimientos encontrados acerca de su uso:

de Pro

  • Conveniencia: Puede que tenga que escribir mucho menos código. Por lo tanto, puede, por ejemplo, mostrar una vista estática sin tener que escribir ningún código.
  • Descripción: Se puede ver rápidamente cómo los ViewControllers se relacionan entre sí
  • Eficiencia: Para los casos de uso sencillos encuentro el Storyboard mucho más eficiente que la "vieja manera".

    Ejemplo 1: Editor > Embed In > Navigation Controller y voilà, no se requieren más instancias ni configuración.

    Ejemplo 2: Puede crear "Celdas de prototipo" para TableView, lo que acelera la creación de vistas de tablas estáticas. Aparentemente, este es not possible con archivos nib

  • Es :-) fresco

de

  • encuentro que la reutilización de alguna manera sufre con guiones gráficos Con. Aunque puedo seguir un ViewController desde varios puntos, todavía es limitado, ya que en un caso podría usar VC como Popover y en otro como Master-ViewController.
  • Suponiendo que trabajas en un equipo grande y diferentes personas están cambiando diferentes partes de tu aplicación, tener un guión gráfico monolítico que luego tienes que unir podría representar un gran problema para el trabajo en equipo.
  • Realmente me gustaría tener algún mecanismo para incluir o hacer referencia a los archivos semilla existentes en el guión gráfico, que actualmente no es posible.

Por lo tanto, teniendo en cuenta estos puntos, todavía encuentro el storyboard muy atractivo, pero tiene sentido combinar ambos enfoques, que en realidad no es gran cosa. Además, esta tecnología todavía es bastante nueva, por lo que podría mejorar en el futuro (cercano).

Cuestiones relacionadas