2017-04-23 2 views
0

Ich habe zwei Ansichten in einem Viewcontroller. Eine Tabellenansicht ist in einer Ansicht von unten eingebettet, und ein Übergang wird sofort zu dieser Tabellenansicht ausgelöst. Ich zeige also eine statische Ansicht oben auf dem Bildschirm und eine Tabellenansicht auf der Unterseite. Das Problem ist, dass das Scrollen in der Tabellenansicht nicht mehr reagiert. Es registriert nur Taps in der unteren Hälfte. Im Grunde gibt es eine unsichtbare Linie in der Mitte der Tabellenansicht und die App registriert nichts darüber (sie registriert nur die Taps, die die erste Ansicht treffen, die viel höher ist als die Tabellenansicht). Der Benutzer kann also nur scrollen wenn er nur die untere Hälfte der Tischansicht berührt. Tableview-Funktionen richtig und zeigt gültige Daten obwohliOS Tableview Scrolling Probleme

image of what's going on

Irgendwelche Ideen?

Antwort

0

Haben Sie den View Hierarchy Debugger (Debug-> View Debugging-> Capture View Hierarchy)? Typische Probleme zu suchen sind:

  1. Transparente Ansichten über dem Tableview, die Touch verschlingen events.To dieses Problem zu beheben, führen Sie eine der folgenden Möglichkeiten:

    • Entfernen Sie die säumige transparente Sicht
    • Fix Die Ansichtshierarchie durch Verschieben der betreffenden transparenten Ansicht hinter der Tabelle
    • Das Layout so korrigieren, dass der untere Anker der transparenten Ansicht nicht unter dem oberen Anker der TabelleView liegt

TableView Behind Transparent View

  1. Die Tabellenansicht über seine Super erstreckt, ohne abgeschnitten zu werden. Berührungsereignisse werden im Stamm der Ansichtshierarchie empfangen und an die entsprechende Unteransicht weitergeleitet. In diesem Fall werden Berührungsereignisse außerhalb der Grenzen der unteren Ansicht nicht an die untere Ansicht gesendet. Aus diesem Grund kann die Ansicht von unten nur Berührungsereignisse weiterleiten, die innerhalb ihrer Grenzen liegen. Um dies zu beheben, führen Sie eine der folgenden Möglichkeiten:
    • aktivieren clipsToBounds auf dem Behälteransicht (natürlich wird dies verstecken nur den Teil der Tabelle, die nicht interaktiv)
    • das Layout Fix Sie die Tableview zu machen ist vollständig innerhalb der Grenzen seiner Super

enter image description here

Verwandte Themen