J'utilise le storyboard normal et les ségues push dans xcode, mais je veux avoir des segues qui apparaissent simplement dans la vue suivante, et non dans la vue suivante (comme lorsque vous utilisez une barre d'onglets et que la vue suivante apparaît juste).
Existe-t-il un moyen simple et agréable de faire "apparaître" des segments push normaux et non de "glisser", sans avoir besoin d'ajouter des segments personnalisés?
Tout fonctionne parfaitement, je veux simplement supprimer cette animation de diapositive entre les vues.
Réponses:
J'ai pu le faire en créant une séquence personnalisée (basée sur ce lien ).
PushNoAnimationSegue
(ou ce que vous avez décidé de l'appeler).Swift 4
Objectif c
PushNoAnimationSegue.h
PushNoAnimationSegue.m
la source
Vous pouvez décocher "Animation" dans Interface Builder pour iOS 9
la source
Identifier
nom différent .La réponse d'Ian fonctionne très bien!
Voici une version Swift de la Segue, si quelqu'un en a besoin:
MISE À JOUR POUR SWIFT 5, MAI 2020
PushNoAnimationSegue.swift
la source
J'ai maintenant réussi à le faire en utilisant le code suivant:
J'espère que ceci aide quelqu'un d'autre!
la source
Voici la version Swift adaptée pour présenter modalement un ViewController sans animation:
la source
réponse en utilisant Swift3 -
pour "push" segue:
pour la séquence "modale":
la source
Pour toute personne utilisant Xamarin iOS, votre classe de segue personnalisée doit ressembler à ceci:
N'oubliez pas que vous devez toujours définir une séquence personnalisée dans votre storyboard et définir la classe sur la classe PushNoAnimationSegue.
la source
Pour moi, le moyen le plus simple de le faire est:
Disponible à partir d'iOS 7.0
la source
J'utilise Visual Studio avec Xamarin et le concepteur ne fournit pas la coche «Animates» dans la réponse de dtochetto.
Notez que le concepteur XCode appliquera l'attribut suivant à l'élément segue dans le fichier .storyboard: animates = "NO"
J'ai édité manuellement le fichier .storyboard et ajouté animates = "NO" aux éléments de segue, et cela a fonctionné pour moi.
Exemple:
la source
PUSH SANS ANIMATION: Swift Voici ce qui a fonctionné pour moi.
Utilisation : définissez la classe segue à partir du storyboard comme indiqué dans l'image. définissez isAnimationRequired de votre viewcontroller sur false à partir de l'endroit où vous souhaitez appeler performSegue, lorsque vous souhaitez pousser segue sans animation et redéfini sur true après avoir appelé self.performSegue. Bonne chance....
la source
Il suffit de régler
animated
faux surUINavigationController.pushViewController
Swiftla source