UIScreenEdgePanGestureRecognizer para activar el gesto de paneo SWRevealViewController

Estoy usando SWRevealViewController para las barras laterales y tengo que usar deslizar para mi historias anteriores y siguientes y la barra lateral para las barras laterales.

La razón por la que utilizo UIScreenEdgePanGestureRecognizer en lugar de PanGestureRecogniser se debe a que el slider terminará con el gesto de la bandeja de llamadas, lo que causará que toda la página se vuelva un desastre. Espero que haya una manera de llamar al gesto de paneo cuando se activa el reconocimiento del panel de bordes en lugar de usar esto:

[self.view addGestureRecognizer:[MainViewController shanetworkingInstance].revealViewController.panGestureRecognizer]; [[BTHomeViewController shanetworkingInstance].revealViewController.panGestureRecognizer requireGestureRecognizerToFail: left]; [[BTHomeViewController shanetworkingInstance].revealViewController.panGestureRecognizer requireGestureRecognizerToFail: right]; 

Quiero usar el delegado de SWRevealVC. Si hay alguna otra forma, sugiérmelo.

 UIScreenEdgePanGestureRecognizer *panLeft = [[UIScreenEdgePanGestureRecognizer alloc] initWithTarget:self action:@selector(_handleRevealGesture:)]; [panLeft setEdges:UIRectEdgeLeft]; panLeft.minimumNumberOfTouches = 1; panLeft.maximumNumberOfTouches = 1; [self.view addGestureRecognizer:panLeft]; 

Métodos delegates de SWRevealVC

 // The following methods provide a means to track the evolution of the gesture recognizer. // The 'location' parameter is the X origin coordinate of the front view as the user drags it // The 'progress' parameter is a positive value from 0 to 1 indicating the front view location relative to the // rearRevealWidth or rightRevealWidth. 1 is fully revealed, dragging ocurring in the overDraw region will result in values above 1. - (void)revealController:(SWRevealViewController *)revealController panGestureBeganFromLocation:(CGFloat)location progress:(CGFloat)progress; - (void)revealController:(SWRevealViewController *)revealController panGestureMovedToLocation:(CGFloat)location progress:(CGFloat)progress; - (void)revealController:(SWRevealViewController *)revealController panGestureEndedToLocation:(CGFloat)location progress:(CGFloat)progress; 

Para replace UIPanGestureRecognizer con UIScreenEdgePanGestureRecognizer solo haga esto:

  • Vaya a SWRevealViewController
  • Busque y reemplace UIPanGestureRecognizer con UIScreenEdgePanGestureRecognizer
  • La mayoría de los bordes del set IMPORTANTE

    _panGestureRecognizer.edges = UIRectEdgeLeft;