2017-02-20 7 views
0

Wie zentriert man ein Bild und ein Label mit dynamischem Text (also dynamischer Höhe) am besten in einem Scrollview in iOS? My layoutiOS Constraints - zentriertes Bild und dynamischer Text

Welche Einschränkungen muss ich hinzufügen? Ich kann wirklich nicht herausfinden, wie es funktioniert, vielleicht kann ich nicht damit umgehen, weil ich ein Android-Entwickler bin und aus meiner Sicht ist es einfacher, Guis mit Android zu entwerfen. Aber das ist nicht der Punkt dieser Frage.

Ich wäre SO dankbar, wenn mir jemand erklären könnte, welche Einschränkungen ich hinzufügen muss. Der Text wird dynamisch geladen, daher ist die Höhe nicht fix. Aus diesem Grund sollte meine Ansicht scrollbar sein (zu diesem Zweck habe ich einen Scrollview hinzugefügt).

Update:

ich die folgenden Bedingungen ausprobiert habe wie hier empfohlen. Aber es funktioniert immer noch nicht.

Das habe ich gemacht.

[what I did with the image[2] what I did with the label

Aber seine Arbeit noch nicht wie es sollte ...

how it look like in simulator (iPhone 5s)

+0

Möchten Sie das Bild auch vertikal zentrieren? ich meine genau in der Mitte des Bildschirms? – Sneha

+0

Nein, es sollte über dem Text sein, horizontal zentriert. – Maximus1809

Antwort

2

Für Bild geben Einschränkungen wie in dem folgenden Bild:

enter image description here Für Etikett, geben Einschränkungen wie in dem folgenden Bild: enter image description here

Wählen Sie die Bildansicht/label, und auf der Unterseite rechts von Xcode, gibt es ein Symbol Ass New Constraints, wie im Screenshot, können Sie oben, links, rechts und unten Einschränkungen hier hinzufügen. enter image description here

+0

Vielen Dank, aber wie kann ich "Bottom/Top/Trailing/Leading Space" erstellen? Ich habe versucht, es aus meinem Bild mit Klick auf [STRG] ziehen und dann auf "Top" (zum Beispiel), aber es erstellt eine "Ausrichtung top to:" ... nicht "Space" – Maximus1809

+0

Ich habe einen neuen Screenshot hinzugefügt . Bitte versuche. Sie können auch Links/Tutorials wie https: //www.raywenderlich ausprobieren.Weitere Informationen zum Hinzufügen von Einschränkungen finden Sie unter com/115444/auto-layout-tutorial-in-ios-9-part-2-constraints. – Sneha

+0

Vielen Dank so sehr! Nein wirklich, DANKE! Es funktionierte! :) – Maximus1809

1

einfach die UIImageView Zentrum zum Superview:

Align Center X to: Superview 
Align Center Y to: Superview 

Und dann ausrichten die UILabel/UITextView:

Top Space to: YourImageView 
Leading Space to: Superview 
Trailing Space to: Superview 
//or 
Align Center X to: YourImageView 
+0

Richten Sie Center X auf: Superview ist "Horizontal in Container" richtig? Wenn ich das "Align" -Menü öffne? – Maximus1809

+0

Ich habe meine Frage aktualisiert. Vielen Dank bis jetzt! – Maximus1809

+0

@ MaxLebold Sie haben Fehler, lesen Sie meine Antwort. Sie richten das TOP der UIImageView an der Beschriftung aus, aber Sie sollten die TOP der Beschriftung an der UIImageview ausrichten. Wenn Sie ein UIScrollView verwenden, werden die Dinge WIRKLICH unordentlich, wenn Sie keine UIView in der Scrollview als Hauptansicht haben. Fügen Sie der Bildlaufansicht eine UIView hinzu, und legen Sie Leading-Trailing-Top-Bottom auf scrollView 0 - 0 - 0 - 0 fest. Und innerhalb dieser UIView, fügen Sie Ihre UIImageView und UILabel als Unteransicht zur UIView hinzu, und beachten Sie die Einschränkungen, wie ich sie in meiner Antwort auf die UIView anstelle der scrollView gezeigt habe. –

Verwandte Themen