2016-07-18 12 views
4

Derzeit habe ich eine horizontale Scroll, die mehrere Seiten enthält. Einige dieser Seiten haben Tabellen mit Zellen, die wischen.Swipe-Konflikt zwischen einer Zelle und horizontalen Scroll

Die Idee ist es, in der Lage zu sein, die Zelle zu wischen, und wenn Sie mit dem Streichen fertig sind, aktivieren Sie irgendwie den Scroll Swipe, um zur nächsten Seite zu gelangen. Etwas wie folgt aus:

enter image description here

Aber wenn ich versuche, kommt es in Konflikt und 2 Scroll bei gleichzeitig aktiviert. Das heißt, während sich die Zelle bewegt und den Knopf zeigt, beginnt sich der Bildlauf auch auf die andere Seite zu bewegen.

Für die Swipe-Zelle I SWTableViewCell weil die native Funktionalität wie folgt bin mit:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if (editingStyle == UITableViewCellEditingStyleDelete) { 
    } 
} 

Nicht einmal aktiviert, sie ignorieren die Swipe Swipe der Zelle vollständig und nur die Scroll aktiviert ist.

Danke, jede Hilfe wäre willkommen.

+0

Ihr GIF funktioniert nicht. Ich denke, es wäre besser, ein anderes UI zu entwerfen. Sie wissen, wischen und weiter wischen in Mail-App Ergebnisse in löschen, oder? – Wain

+0

Entschuldigung @Wain hinzugefügt Geschenk wieder – jose920405

+0

Warum verwenden Sie nicht einen Page View-Controller mit einer Tabellenansicht darin? – Rikh

Antwort

2

versuchen, diese

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
{ 
    return TRUE; 
} 
0

dieses

versuchen
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { 
    if ([[otherGestureRecognizer.view class] isSubclassOfClass:[UITableView class]]) { 
     if ([otherGestureRecognizer isKindOfClass: [UIPanGestureRecognizer class]]) { 
      UIPanGestureRecognizer *otherPan = (UIPanGestureRecognizer *)otherGestureRecognizer; 
      CGPoint translation = [otherPan translationInView:otherGestureRecognizer.view]; 
      return translation.x < 0; 
     } 
    } 
    return NO; 
} 
Verwandte Themen