Ich möchte ein UIScrollView in Autolayout erstellen, das seinen Inhalt vollständig enthält (nicht scrollt), bis der Inhalt eine bestimmte Größe hat (sagen 400), und dann beginnt es zu scrollen.Wie ein UIScrollView seine Inhaltsgröße anpassen muss, bis ein Maximum vor dem Bildlauf im Autolayout
So habe ich meine Ansichten wie diese angelegt
Wenn ich Scroll View.height = ContentView.height
gesetzt, dann wird der Scrollview erweitert den gesamten Inhalt passen. So weit, ist es gut.
Nun, wenn ich versuche, eine maximale Höhe über Scroll View.height <= 400
zu setzen, was am Ende passiert ist es die ContentView.height
auch Sätze (wegen Scroll View.height = ContentView.height
) und der Text abgeschnitten wird und es Bildlauf nicht
Also ist das überhaupt möglich mit Auto-Layout? Das scheint mit Frames einfach zu sein, aber ich hätte gerne eine Lösung im automatischen Layout.
Hier ist das Beispielprojekt, wenn man sich selbst spielen möchten - https://github.com/iwllyu/content-hugging-uisv-with-max
Gibt es einen Grund, warum Sie keine 'UITextView' anstelle einer Scroll-Ansicht mit einer mehrzeiligen' UILabel' verwenden können? – TylerTheCompiler
Ich könnte eine UITextView verwenden - ich nehme an, ich kann eine maximale Höhe darauf einstellen, und es wird einfach erledigt? – wyu
Eigentlich, vergiss ... Ich denke, die Verwendung eines 'UITextView' würde auch seine eigenen Probleme darstellen. Es gibt keine Möglichkeit, * nur * automatisches Layout zu verwenden, um eine Textansicht so zu erweitern, dass sie zu ihrem Inhalt passt. Daher ist die Verwendung eines 'UILabel' wirklich am besten in dieser Situation ... – TylerTheCompiler