Je suis en train de créer une application flashcard iPhone qui sera utilisée pour étudier divers termes. Actuellement, j'utilise un UIPageViewController pour afficher chaque carte consécutive (contrôleur de vue). Lorsque l'utilisateur appuie sur une carte, elle retourne et leur indique le dos, et quand ils balaient vers la gauche ou la droite, ils peuvent faire défiler les cartes. Jusqu'à présent, cela fonctionne très bien, mais je veux être en mesure de montrer à la fois l'avant et l'arrière de la carte en mode paysage. Normalement, ce serait facile à faire en utilisant la méthode func pageViewController(_ pageViewController: UIPageViewController, spineLocationFor orientation: UIInterfaceOrientation)
de UIPageViewControllerDelegate et en renvoyant .mid
si l'orientation est horizontale. Cependant, puisque je n'utilise pas .pageCurl
mais .scroll
comme transitionStyle de ma pageViewController, cette méthode n'est jamais appelée. Apple Documentation Il ne peut pas non plus être défini manuellement si vous n'utilisez pas .pageCurl
. docs Apple disent:Comment faire pour définir UIPageViewControllerSpineLocation à .mid lors de l'utilisation de transitionStyle .scroll
A spine location is only valid if the transition style is pageCurl. If the transition style is pageCurl, the default value for this property is min; otherwise, the default is none.
J'ai essayé d'ajouter une méthode qui est appelée lorsque l'orientation est paysage:
func showBothSides(){
let currentViewController = self.pageViewController!.viewControllers![0] as! PracticePageDataVC
let viewControllers: [UIViewController] = [currentViewController, currentViewController]
self.pageViewController!.setViewControllers(viewControllers, direction: .forward, animated: true, completion: {done in })
}
Mais retourne l'erreur: « 'Le nombre de contrôleurs de vue fournis (2) ne correspond pas au nombre requis (1) pour la transition demandée '"
Donc, fondamentalement, je suis à la recherche d'une solution alternative pour montrer deux contrôleurs de vue côte à côte tout en conservant la fonctionnalité de la hor transition de défilement horizontal entre les cartes.
Merci! J'avais peur de ça ... mais je me demandais/j'espérais qu'il y avait une solution rapide et facile. Appréciez l'aide! –
Notez qu'aucune de ces approches ne vous donnera une sorte de défilement magique de demi-page. La taille de la page est la taille de la vue déroulante. – matt