J'ai un UIPageViewController qui affiche des images. J'ai défini une opportunité pour envoyer une image souhaitée que l'utilisateur est en train de visualiser. Pour cela, si l'utilisateur appuie une fois sur la zone centrale de l'écran, une barre d'onglets apparaît avec un élément de barre intitulé "Mail". Et quand ce bouton est pressé l'image est attachée à un compositeur de courrier. Mais j'ai un petit problème ici: Comme le bouton de la barre est sur le bord gauche quand j'appuie sur le curl de la page a lieu et je ne peux pas obtenir le compositeur de courrier - plus précisément je ne peux pas obtenir le bouton tapé. Comment est-ce que j'empêcherais la boucle de page quand ce bouton est pressé?IOS - Empêche la courbure de page dans PageViewController
Répondre
Il existe plusieurs façons de résoudre ce problème. La deuxième solution est plus facile à mettre en œuvre. Le premier est d'accéder aux reconnaisseurs de gestes définis pour le contrôleur de vue de page (à partir de la propriété "gestureRecognizers", qui retourne un tableau de reconnaissance de gestes), de rechercher les gestes "tape type" puis de leur affecter un délégué à votre contrôleur de vue. Ce délégué implémentera la méthode
gestureRecognizer:shouldReceiveTouch:et vérifiera si le tap s'est produit dans la position de la barre d'onglets et retournera NO dans ce cas, donc le geste ne sera pas déclenché. Votre délégué renverra OUI si vous voulez toujours le toucher, mais il est en dehors de la région de la barre d'onglets.
Une autre possibilité consiste à définir un nouveau système de reconnaissance de gestes de prise et à l'affecter à la barre d'onglets. Dans ce cas, lorsque vous appuyez sur le bouton (qui se trouve dans la barre d'onglets), le sélecteur de cible que vous avez assigné à votre geste de frappe sera déclenché. Clairement, ce sélecteur ne fera rien puisque son but est simplement d'éviter la propagation aux gestes qui le dépassent (c'est le comportement par défaut).
Je pense que ma réponse est venue trop tard de votre demande, donc si vous avez trouvé une meilleure solution, postez-la!
- 1. iOS renvoie l'instance de PageViewController de UIViewController
- 2. Comment désactiver la courbure de la page sur une seule pression de uipageviewcontroller de ios
- 3. Implémentation de PageViewController dans Swift
- 4. PageViewController dans NavigationController dans TabBarController
- 5. iOS Accès aux enfants PageViewController à l'intérieur de ContainerView
- 6. ajuster l'effet de courbure partielle
- 7. Effet de saut sur PageViewController
- 8. SWRevealViewController panGestureRecognizer avec pageViewController iOS (menu latéral sur swipe)
- 9. Balayez le menu et la pageViewController glisser
- 10. Calcul du rayon de courbure
- 11. empêche la réflexion (objc/runtime) sur iOS
- 12. PageViewController et Orientation changer
- 13. -webkit-transform Empêche la page De
- 14. iOS UIPanGestureRecognizer empêche le défilement
- 15. dojo.require() empêche Firefox de rendre la page
- 16. PageViewController index actuel
- 17. empêche l'actualisation de la page après l'affichage
- 18. Styles de transition personnalisés de PageViewController
- 19. Prévention de la courbure de la page à partir des vues hors écran
- 20. iOS empêche la mise à jour de la date/heure?
- 21. Empêche IE d'actualiser la page - iframe _top
- 22. empêche MPMoviePlayerController de jouer automatiquement dans iOS 4.2.1
- 23. Empêche la disparition/la réapparition du clavier iOS entre UITextFields?
- 24. ios sous-visualisation positionnement incorrect dans pageViewController sur le premier tirage
- 25. La méthode post empêche le chargement de la page
- 26. Validation sur la 1ère page empêche deuxième page d'afficher
- 27. MVC3 empêche la navigation à partir de la page
- 28. Comment faire l'effet de courbure de transition avec PixelBender
- 29. Empêche Rails de rediriger une page
- 30. Comment faire avancer correctement un PageViewController dans Swift