2017-10-16 8 views
1

bekam ich einen Stapelansicht mit Aussicht: 1,2,3,4 und 5Swift: Ansicht Bringen von Stapelansicht nach vorne

für ein Verfahren der Suche, über das Bild View4 von view4 in der Stapel-Ansicht zu bringen all die anderen Ansichten. Der Grund, warum ich das brauche, ist, weil ich die Bildansicht4 über die Bildansicht3 in Ansicht3 bewege.

Ich habe versucht, view3 über View4 in der Ansichtshierarchie zu verschieben, aber das wechselt nur ihre Plätze in der Stack-Ansicht.

enter image description here

Antwort

2

Vom UIStackView documentation:

der Reihenfolge [die Ansichten in] der subviews Array definiert die Z-Reihenfolge der Subviews. Wenn sich die Ansichten überschneiden, werden Teilansichten mit einem niedrigeren Index hinter Teilansichten mit einem höheren Index angezeigt. So

da alle Ansichten in der arrangedSubviews Array Stack Ansicht sind auch in der subviews Arrays Stapelansicht, sollten Sie in der Lage sein, den Standard UIView APIs verwenden, um die Ansichten z-Reihenfolge neu zu ordnen:

  • bringSubview(toFront:)
  • sendSubview(toBack:)
  • exchangeSubview(at:withSubviewAt:)

Ich weiß nicht, ob dies in Interface Builder möglich ist oder nicht.

0

das Bild aus dem Stapel Ansicht entfernen und es auf die gleiche Ansicht hinzufügen, die den Stapel Ansicht als subview enthält, addSubview(_:) verwenden. Das wird es zu allen anderen Ansichten bringen. Sie können auch insertSubview(_:aboveSubview:) verwenden, um es direkt über der Stapelansicht einzufügen.

Sie müssen der neuen Ansicht Einschränkungen hinzufügen, damit sie dort positioniert wird, wo Sie sie haben möchten.

Verwandte Themen