Storyboard: Storyboards se introducen en iOS 5. Cuando usamos storyboards, nuestro objetivo de implementación debe ser 5.0 o superior. Con la ayuda de storyboards podemos crear todas las pantallas de una aplicación e interconectar la pantalla bajo una interfaz MainStoryboard.storyboard. Con los guiones gráficos podemos usar segues para empujar / presentar controladores de vista, reduciendo así el código necesario para empujar / presentar.
xib: Xib significa constructor de interfaz xml . Los Xib son la forma más antigua de realizar el diseño de la interfaz iOS. Con xib se puede diseñar cualquier vista arbitraria / personalizada, que un desarrollador puede adjuntar a un controlador de vista según sea necesario. Si aplicamos un enfoque orientado a objetos para nuestras IU, entonces tiene sentido usar xib y dividir la vista del controlador de vista en módulos separados.
Ahora, ¿cuál es mejor?
- ¿Cuáles son los mejores desarrolladores de aplicaciones para iPhone en Suiza?
- ¿Es mejor usar guiones gráficos o hacer todo mediante programación con Swift 3 y Xcode 8?
- ¿Cuál es una buena plataforma de desarrollo de aplicaciones de tipo arrastrar y soltar para Android e iOS con una curva de aprendizaje más pequeña?
- Cómo descargar el software beta para desarrolladores de iOS (no una versión beta pública)
- ¿Cuáles son los mejores estudios de terceros para el desarrollo de juegos iOS?
Dado que los xibs son viejos, eso no significa que estén desactualizados, desaprobados o sean inferiores a los guiones gráficos. Ambos son buenos a su manera. En algunos casos, es mejor usar guiones gráficos y en algunos casos se prefieren xibs.
Se prefieren los guiones gráficos cuando:
- Estamos teniendo vistas con contenido dinámico, donde el diseño cambia significativamente dependiendo del contenido.
- Tenemos vistas que no se pueden designar fácilmente en el generador de interfaces.
- Estamos teniendo controladores de vista con transiciones complicadas.
Se prefieren xibs cuando:
- Queremos crear plantillas de vista reutilizables.
- Queremos crear plantillas de celdas de tabla reutilizables.
- Creación de ventanas emergentes, vistas modales.