J'essaie toujours de trouver une solution à ce qui est théoriquement une tâche très simple et qui va d'un uiviewontroller à un contrôleur de visualisation scindé. (Pourquoi la pomme a-t-elle rendu si difficile).
Je suis à une scène où je mets maintenant la SplitViewController dans son propre storyboard.
Et lorsque l'utilisateur sélectionne un bouton sur le contrôleur UIView unique, j'appelle le code suivant: p> donc je veux charger le storyboard avec le contrôleur SPLASTVIEW.
Mais cela se bloque également avec "Application essayé de présenter des contrôleurs de visualisation divisaires modallellement" p> Je n'ai spécifié aucune action "modale" dans le code. P> existe-t-il une solution pour comment faire Ceci? P> P>
5 Réponses :
Le Un contrôleur de visualisation split doit toujours être la racine de toute interface que vous
créer. En d'autres termes, vous devez toujours installer la vue depuis un
Objet UisplitViewController en tant que vue racine de votre application
la fenêtre. Les vitres de votre interface de vision de la scission peuvent alors contenir
Contrôleurs de navigation, contrôleurs à barres d'onglets ou tout autre type de vue
Contrôleur Vous devez implémenter votre interface. Vue partagé
Les contrôleurs ne peuvent pas être présentés de manière modale. p>
blockQuote> UisplitViewController code> doit toujours être le contrôleur de vue racine et ne peut pas être présenté de manière modale. Voir Apple Docs , qui dit: p>
Je peux intégrer une scissionViewController dans un TabviewController et Segue dans le TabviewController. Pourquoi Apple fait-il une si grosse affaire à ce sujet?
Je ne sais pas, mais ce sont les gars qui ont mis en œuvre tout ce genre de choses ... Si vous ne suivez pas leurs conseils et règles, vous obtiendrez plus tôt ou tard dans des ennuis.
Apple ou quiconque offre-t-il un motif ou a une idée de la manière de présenter des vues avant d'arriver à la vue split? IE Login est un scénario assez courant. Comment présenter une vue de connexion régulière et une transition sur le contrôleur de visualisation scindée une fois connecté? Encore une fois si Apple veut être un contrôleur de visualisation root d'application, probablement pas une bonne idée de violer cela ou de la solvabilité.
Ce n'est plus vrai depuis iOS 8.
Celles-ci ne sont pas vraies même iOS7 ,. Vous pouvez présenter une vision de Splity Model, mais vous devez effectuer la racine racolaire SPLIDVIEW dans Ewakefromnib spécifiquement dans l'IOS7, comme indique Alex. Dans iOS 8 Pas besoin.
Vous pouvez utiliser une section SplitViewController comme une vue sur un TabviewController. Toutefois, une section SplitViewController ne peut pas être un contrôleur modal dans le sens traditionnel. Pour passer à une section SplitViewController à partir d'un UIViewController, utilisez le code comme celui-ci: qui transigea entre les contrôleurs. Vous pouvez modifier le type d'animation en fonction de votre objectif. Ceci est défini avec le paramètre Options; présentant actuellement UIViewanimationOptionTransitionFlipfromright. p> p>
La transition d'animation n'a pas pris effet pour moi du tout. Y a-t-il une raison pour laquelle vous définissez le rootvc sur le contrôleur de vue cible, puis retournez à la source avant d'exécuter le bloc?
NEWLIND, je suis arrivé à travailler en utilisant ceci donc: Stackoverflow.com/Questtions/8053832/...
Si vous avez créé uisplitViewController code> dans un storyboard, et lorsque vous avez ajouté la vue principale avant la vue Split, vous pouvez utiliser
exécuterSegueVithIdentifier code> pour déclencher un jeu entre la vue principale et Split.
Pour résoudre le bogue dans la légende, vous devez remplacer une méthode dans votre
uisplitViewController code>
Y a-t-il un moyen de le faire à Obj-C?
Oui, il est possible de passer de UIView à UisplitView. Vous devez utiliser une SEGUE personnalisée. P>
Lire ce lien (traduisez-le du japonais) p>
Celui-ci est une question assez ancienne. Cependant, j'ai eu travaillé avec le code ci-dessous dans mon application et je pense que c'est une meilleure solution.
[self addChildViewController:<# Your Split VC #>]; [<# Your Split VC #>.view willMoveToSuperview:self.view]; <# Your Split VC #>.view.frame = self.view.frame; [self.view addSubview:<# Your Split VC #>.view]; [<# Your Split VC #>.view didMoveToSuperview];