Looking for ios Keywords? Try Ask4Keywords

iOSSwift: Modifier le rootViewController dans AppDelegate pour présenter le flux principal ou de connexion / d'intégration


Introduction

Il est souvent utile de présenter une première expérience aux nouveaux utilisateurs de votre application. Cela peut être pour un certain nombre de raisons, telles que les inviter à se connecter (si requis pour votre situation), expliquer comment utiliser l'application ou simplement les informer des nouvelles fonctionnalités d'une mise à jour (comme le font Notes, Photos et Musique). iOS11).

Remarques

Tout d'abord, comme vous traitez de multiples flux, c'est là que les Storyboards peuvent être utilisés efficacement. Par défaut, votre application utilise Main.storyboard pour votre flux principal. Votre flux d'intégration / alternatif peut être contenu dans un storyboard secondaire, par exemple. Onboarding.storyboard

Cela présente de nombreux avantages:

  • dans une équipe de développeurs, le travail sur chaque flux utilisateur peut être séparé
  • contrôle de source plus clair (git)
  • séparation des préoccupations

Lorsque votre application se lance, vous pouvez déterminer quel flux doit être présenté. La logique pour cela peut être contenue dans votre AppDelegate:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    let isFirstRun = true // logic to determine goes here
    if isFirstRun {
        showOnboarding()
    }
    return true
}

Pour afficher le flux d'intégration, il est utile de se demander comment gérer l'expérience de le rejeter une fois que le client l'a terminé et qui est sémantiquement correct pour ce que vous essayez de créer.

Approches:

Les deux approches principales sont:

  1. Permuter le contrôleur de vue racine de la fenêtre principale de l'application
  2. Présenter le flux d'intégration en tant que parcours modal, chevauchant le flux principal.

L'implémentation de ceci devrait être contenue dans une extension à AppDelegate.

Swift: Modifier le rootViewController dans AppDelegate pour présenter le flux principal ou de connexion / d'intégration Exemples Liés