3 votes

UITableView peut être déplacé vers le haut et vers le bas, mais ne permet pas le geste Swipe ?

Je suis un débutant en Swift, et j'essaie d'ajouter une reconnaissance de geste de swipe à mon UIView. J'ai inséré un CALayer gradient à l'index 0 pour avoir un arrière-plan gradient.

Mon problème est le suivant :

Les gestes de balayage pour la droite et la gauche fonctionnent bien, mais pour Down, cela ne fonctionne pas, pourquoi ?

2voto

Ajith R Nayak Points 2658

Définissez le délégué des gestes de balayage que vous ajoutez à la vue.

let swipeGesture = UISwipeGestureRecognizer(target: self, action: Selector("handleSwipe:"))
swipeGesture.delegate = self
self.view.addGestureRecognizer(swipeGesture)
self.mySwipeGesture = swipeGesture

Le GestureRecognizerDelegate demande si deux reconnaisseurs de gestes devraient être autorisés à reconnaître des gestes simultanément. Retour true pour permettre à la fois gestureRecognizer y otherGestureRecognizer pour reconnaître leurs gestes simultanément. L'implémentation par défaut renvoie false -Il n'y a pas deux gestes qui peuvent être reconnus simultanément. Pour ce faire, implémentez le délégué suivant.

extension ViewController : UIGestureRecognizerDelegate {
  func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
    //Identify gesture recognizer and return true else false.
    return gestureRecognizer.isEqual(self.mySwipeGesture) ? true : false
  }
}

0voto

Jobins John Points 11

Les balayages vers le haut et vers le bas sont la propriété par défaut de l'affichage des tableaux. Je vous suggère de désactiver le défilement de la vue tableau lorsque vous voulez faire quelque chose sur la superposition.

tableView.scrollEnabled = NO;

Si vous souhaitez faire glisser une cellule particulière, appuyez longuement sur celle-ci et commencez à la faire glisser.

Voici comment vous pouvez y parvenir.

J'espère que cela vous aidera.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X