Ejecutar código en la pantalla de inicio

Xcode permite crear una pantalla de inicio en files .xib través de Interface Builder. ¿Es posible ejecutar algún código con el xib, al igual que en los controlleres de vista habituales? Sería genial si pudiéramos configurar diferentes texts / imágenes / etc mientras se iniciaba la aplicación.

No, no es posible

Cuando se muestre la pantalla de inicio, su aplicación estará en estado de carga.

Incluso la aplicación - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions no se ejecutará completamente mientras se muestra la pantalla de inicio.

Por lo tanto, está claro que no tiene acceso a su aplicación, por lo que en este momento no puede ejecutar ningún código.

Estaba tratando de hacer lo mismo aquí. 🙂

Realmente me gustaron algunas de las aplicaciones, en las que hacen un poco de saludo dynamic e image cada vez que se lanza la aplicación, como "¡Te ves bien hoy!", "Hoy es viernes, un día maravilloso", etc., que es muy lindo.

Hice una búsqueda, a continuación se detalla cómo hacerlo: (Mi código es XCode 7, con un file launchscreen.xib)

 class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? var customizedLaunchScreenView: UIView? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. application.statusBarHidden = true // customized launch screen if let window = self.window { self.customizedLaunchScreenView = UIView(frame: window.bounds) self.customizedLaunchScreenView?.backgroundColor = UIColor.greenColor() self.window?.makeKeyAndVisible() self.window?.addSubview(self.customizedLaunchScreenView!) self.window?.bringSubviewToFront(self.customizedLaunchScreenView!) UIView.animateWithDuration(1, delay: 2, options: .CurveEaseOut, animations: { () -> Void in self.customizedLaunchScreenView?.alpha = 0 }, completion: { _ in self.customizedLaunchScreenView?.removeFromSuperview() }) } return true } // other stuff ... } 

Haz lo que quieras mostrar, text, imágenes, animaciones, etc. dentro de customizedLaunchScreenView aquí.

Al final del lanzamiento, simplemente desvanezca esta UIView personalizada usando el cambio de valor alfa, luego elimínela por completo.

¿Cuan genial es eso? ¡Me encanta!

Espero eso ayude.