Ich kann nicht verstehen, wie ich dieses Auto-Layout-Problem lösen kann, ich habe diese Ansicht:
Es gibt ein UIScrollView mit den Elementen, die Sie in der Ansicht sehen, aber die Ansicht gibt mir diese Warnung:
%Vor%Ich kann nicht verstehen, wie dieses Problem zu lösen, ich möchte, dass die Ansicht für die gesamte Bildschirmgröße ist, und ich möchte, dass die Breite wird die Bildschirmbreite sein, wie kann ich es lösen?
Ich habe seine Korrektur in XCode 7.3 beobachtet und es sind nur 10 Sekunden Arbeit. Ich habe ein Video darüber gemacht. Überprüfen Sie hier:
Alles, was Sie tun müssen, ist, eine Unteransicht zu UIScrollView
mit demselben width and height
hinzuzufügen. Wählen Sie dann ViewController
und drücken Sie Reset to suggested constraint
. Bitte überprüfen Sie das Video für ein klares Verständnis.
Danke
Dies liegt daran, dass Sie nicht genügend Einschränkungen bereitstellen, damit Xcode die Breite Ihrer Bildlaufansicht finden kann. Sie können auf Ihrem Bildschirm sehen, dass es keine Einschränkungen gibt, die erfüllt werden können, um die Breite der Bildlaufansicht zu finden.
Sie können dies tun, indem Sie den führenden und nachfolgenden Bereich der Bildansicht angeben, der die Fixbreite enthält. Es kann auch mit anderen Ansichten gemacht werden. Aber ich werde die Kontrolle bevorzugen, die fix Height & amp enthält; Breite Es ist also nicht erforderlich, die Umgehungspriorität festzulegen oder den Widerstand zu komprimieren.
Die Lösung ist:
Sie haben oben eine UIImageView. Sie legen die Breite der UIImageView gleich der Breite der Stammansicht des UIViewController
Sie haben den führenden und nachgestellten Bereich von UIImageView für UIScrollView auf 0 gesetzt
Sie legen die Höhe der UIImageView auf die Höhe fest, die das Bild haben soll. Und dann legen Sie fest, dass der Ansichtsmodus von UIImageView "Aspect fit" ist.
Ich hatte das gleiche Problem vor einem Monat. Fügen Sie eine Einschränkung hinzu, die bewirkt, dass das UIView
innerhalb des UIScrollView
die gleiche Größe wie das UIScrollView
hat. Wenn Sie innerhalb der UIScrollView
mehrere Ansichten haben, setzen Sie Ihre UIView
s in eine neue UIView
und stellen Sie sicher, dass die neue UIView
die gleiche Breite wie die UIScrollView
hat.
Mit freundlichen Grüßen
Auch ich habe dieses Problem gemeistert und die einzige Möglichkeit, das Problem zu lösen, war die folgende Strategie:
Dies sollte jetzt geschehen, Sie können Schritt 3 folgen und mit Ihrer Benutzeroberfläche fortfahren
Ich hoffe, es hilft
Tags und Links objective-c ios autolayout interface-builder uiscrollview