Xcode consente di creare la schermata di avvio nei file .xib
tramite Interface Builder. È possibile eseguire qualche codice con lo xib, proprio come nei soliti controller di visualizzazione? Sarebbe bello se possiamo impostare diversi testi/immagini/ecc durante l'avvio delle app.Esegui codice nella schermata di avvio
risposta
No, non è possibile.
Quando viene visualizzata la schermata di avvio, l'app sarà in stato di caricamento.
Anche il - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
non verrà eseguito completamente mentre è visualizzata la schermata di avvio.
Quindi è chiaro che non si ha accesso alla tua app e quindi a questo punto non è possibile eseguire alcun codice.
Grazie per la risposta. Quindi il lancio di xib è stato caricato da iOS, non dall'app. Purtroppo, perché ho pensato di mostrare diversi saluti con lanci diversi. – Dmitriy
@Dmitriy: Purtroppo non è possibile, solo l'immagine di lancio è sostituita da un lancio xib. L'unico vantaggio è che puoi progettare su di esso. Ma non è possibile eseguire alcun codice. –
È possibile, l'ho appena capito. controlla la mia risposta qui sotto. – RainCast
Stavo cercando di fare la stessa cosa qui. :)
Mi sono piaciute alcune app in cui fanno un po 'di testo e di immagini dinamici ogni volta che viene lanciata l'app, come "Sei bella oggi!", "Oggi è venerdì, una giornata meravigliosa ", ecc., che è molto carino.
ho fatto qualche ricerca, sotto è come farlo: (il mio codice è 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 ...
}
Basta fare ciò che mai si voleva mostrare, testo, immagini , animazioni, ecc. all'interno dello personalizzatoLaunchScreenView qui.
Alla fine dell'avvio, basta attenuare questo UIView personalizzato utilizzando la modifica del valore alfa, quindi rimuoverlo completamente.
Quanto è bello? Lo adoro assolutamente!
Spero che aiuti.
didFinishLaunchingWithOptions viene chiamato al termine del caricamento dell'app, quindi dopo che è stata visualizzata la schermata di avvio. Capisco perché uno vorrebbe una transizione personalizzata prima di entrare nell'app ma questa non è una schermata di avvio personalizzata in alcun modo. –
Quindi non è la risposta esatta alla domanda .. ma è molto utile .. un bel workaround – Yitzchak
Stavo anche cercando di raggiungere questo obiettivo. Ho provato quanto segue, dà un ritardo di un paio di secondi ma funziona per me.
- Creare e impostare una schermata di avvio nelle impostazioni del progetto.
- Creare un controller di visualizzazione con classe personalizzata (SplashViewController) e impostarlo come controller di visualizzazione iniziale nello storyboard.
- Aggiungi una vista contenitore e impostala a schermo intero.
- Imposta i passaggi incorporati in uno Storyboard di riferimento.
- Seleziona Reference Storyboard e imposta la schermata di avvio nella proprietà StoryBoard da Attribute inspector.
- Fai tutto ciò che vuoi in SplashViewController (riproduci animazione o controllo di sessione ecc.) Ed esegui i passaggi quando hai finito.
Spero che aiuti!
- 1. Animazione personalizzata nella schermata di avvio
- 2. Installa l'icona di avvio nella schermata iniziale dopo
- 3. Debug della schermata di avvio
- 4. La schermata di avvio di iOS7 (schermata iniziale) lascia uno spazio nella parte inferiore
- 5. iOS: come ritardare la schermata di avvio?
- 6. Cancella schermata di avvio in R/RStudio
- 7. iOS 9 schermata di avvio nero
- 8. schermata di avvio dell'app Web per iPhone
- 9. Modifica schermata di avvio in JMonkey Engine
- 10. Django - Esegui codice all'avvio
- 11. La schermata di avvio di iOS non si aggiorna
- 12. script iniziale nella schermata
- 13. Forza iPad Pro alla massima risoluzione senza schermata di avvio
- 14. Come impostare il carattere sull'etichetta nella schermata di avvio in iOS 8
- 15. Xcode | Perché utilizzare un file di schermata di avvio oltre l'origine delle immagini di avvio?
- 16. Come implementare un'interfaccia utente segnaposto come schermata di avvio
- 17. Come impostare un'immagine della schermata di avvio in Xcode
- 18. Rimozione della schermata di avvio in Xcode 6.0
- 19. Crontab - Esegui nella directory
- 20. Android, come creare una schermata iniziale o una schermata di avvio senza lo schermo bianco?
- 21. Esegui jar nella console
- 22. Sposta modulo nella schermata specificata
- 23. Esegui codice Java online
- 24. Promemoria mango nella schermata bloccata
- 25. Come posso cambiare il codice della schermata iniziale di Android Default e sostituire il codice sorgente dell'applicazione Personalizza schermata iniziale?
- 26. Esegui Web di Azure attivato dal codice
- 27. Android Studio - Esegui l'applicazione senza attività di avvio
- 28. Avvio di un'altra applicazione dal codice C#
- 29. Android: modifica il nome dell'app nella schermata iniziale
- 30. Modifica dei risultati RenderTarget nella schermata viola?
Pensa a ** perché ** la schermata di avvio è lì. – zaph
@Zaph Capisco PERCHE '. Ma dall'altra parte, se voglio mostrare solo un saluto casuale dalla lista definita, non ci vorrà nulla per iOS. – Dmitriy
È sempre possibile aggiungere un controller di visualizzazione iniziale che visualizza la stessa immagine della schermata di avvio e aggiungere i propri auguri. – rdelmar