2017-05-07 6 views
0

Gibt es eine Möglichkeit, ein Objekt in einem UIScrollView daran zu hindern, sich zu bewegen, weil UIScrollView von einer Benutzerinteraktion reagiert? Im Wesentlichen möchte ich, dass einige Dinge in der Scrollansicht verschoben werden, andere jedoch eingefroren bleiben. Sie müssen alle in der Scrollansicht sein, daher ist es nicht möglich, sie in eine andere Ansicht zu verschieben.Ein Objekt in UIScrollView vom Verschieben stoppen

+0

Vielleicht möchten Sie eine Einschränkung setzen und basierend auf dem aktuellen Offset für die Scrollview müssen Sie den Constant-Wert der Constraint ändern ... –

+0

versuchen Sie das Objekt, das sich nicht bewegen sollte, in die übergeordnete Ansicht der scrollView zu verschieben , bedeutet, dass das Objekt nicht in der Bildlaufansicht ist, und dass es dieselbe Ansicht wie die Bildlaufansicht hat –

Antwort

0

Für alle anderen, die das gleiche Problem haben, habe ich eine Antwort gefunden. Ich habe die Objekte, die ich noch haben wollte, in eine UIView gelegt. Dann verwendete ich die UIScrollView-Delegierten, um den anfänglichen Inhaltsversatz zu erhalten, als der Bildlauf gerade begann, und subtrahierte den aktuellen Inhaltsversatz, während die Bildlaufansicht scrollte, um die Änderung des Inhaltsversatzes zu erhalten. Danach habe ich diesen Inhaltsversatz an die Containeransicht gesendet, in die ich alle meine Objekte eingefügt habe, und die Inhaltsveränderung von der Position der Containeransicht subtrahiert. Das Ergebnis ist, dass alles in der Containeransicht vollkommen ruhig bleibt.

0

fügen Sie dem gewünschten festen Objekt eine Abhängigkeit in Bezug auf die Hauptansicht hinzu. Dies würde dieser Sichtweise entsprechen.

Verwandte Themen