2017-10-06 5 views
0

Ich versuche scrollbare Stackview in meiner App zu implementieren, aber ich kann es nicht zum Laufen bringen.Scrollen durch UIStackView funktioniert nicht

screenshot of the screen

Wenn ich auf das Textfeld klicken, wird ein UIPicker gezeigt. Basierend auf der ausgewählten Zeile (1 bis 15) wird eine UIButton zur Stackview hinzugefügt.

for index in 1...selectedRow+1 { 

    let button = UIButton() 
    button.setTitle("\(index)", for: .normal) 
    directionsStackView.addArrangedSubview(button) 

} 

Das sieht ziemlich gut aus, es sei denn, die Zahl> 7

screenshot of that

So Ive entschied UIScrollView zu implementieren durch die stackview blättern

Die StackView hat die Ausrichtung auf Fill und Verteilung auf gleichen Abstand.

Constraints:

Scroll hat: Höhe Gleich bis 35, Hinter- und Vorder zu Pannen

StackView hat: nachlauf, führt, oben, unten, gleiche Höhe mit Super zu Super und ausgerichtet Mittelpunkt X zu superview (Superview ist der scrollview)

Die Sache, die ich erreichen möchte ist - der Abstand zwischen Zahlen sollte immer gleich sein, und wenn die es zu viele Zahlen sind (7+), ändern Sie nicht den Abstand zwischen Zahlen zu sein weniger, scrollen Sie einfach horizontal durch sie hindurch.

Ich dachte, dass die Erhöhung der Breite von Stackview funktionieren würde, aber das Problem ist, dass ich nicht in der Lage bin, durch sie zu scrollen.

Screenshot: htt ps: //imgur.com/a/roi38 (sorry für den Raum im nicht in der Lage Links zu posten 3+ wegen Ruf)

jemand mir mit diesem helfen?

Vielen Dank.

Antwort

0

StackView kann standardmäßig nicht gescrollt werden, ja, Sie benötigen eine ScrollView.

Sie haben möglicherweise die Content der ScrollView (example on how you could do that)

jedoch eine bessere Lösung für Ihr Problem wahrscheinlich gewesen wäre, zu verwenden, um ein CollectionView zu setzen vergessen.

0

Wählen Sie alle Tasten aus und betten Sie sie in scrollView statt stackView in folgender Weise ein.

enter image description here

Verwandte Themen