Verhindern Sie, dass Interface Builder Constraints automatisch erstellt?

8

Ich habe hier ein Demo-Projekt erstellt . Ich habe eine Ansicht, wo ich eine ScrollView in einer .xib-Datei erstellt habe. Im Interface Builder habe ich keine Einschränkungen festgelegt. In meiner viewDidLoad Methode setze ich Einschränkungen mit SnapKit :

%Vor%

Wenn ich den Code ausführe, erhalte ich die folgende Konsolenausgabe:

%Vor%

Es scheint, dass Interface Builder Constraints für mich erzeugt, auch wenn ich keine gesetzt habe. Dies führt zu einem Konflikt mit meinen Constraints, die ich im Code einstelle. Ich habe auch setTranslatesAutoresizingMasks(false) eingestellt.

Wie kann ich verhindern, dass der Interface Builder Beschränkungen automatisch generiert?

    
confile 29.05.2015, 16:41
quelle

2 Antworten

13

Wenn Sie bezüglich der NSAutoresizingMaskLayoutConstraints in dieser Liste verwirrt sind, liegt dies möglicherweise daran, dass Sie setTranslatesAutoresizingMasksIntoContraints(false) nicht für diese Ansicht aufgerufen haben. (obwohl ich hatte den Eindruck, dass SnapKit das für Sie tut).

Wenn Sie über NSIBPrototypingLayoutConstraint verwirrt sind, handelt es sich um eine automatisch generierte Einschränkung durch den Interface Builder. Um es loszuwerden, fügen Sie in Interface Builder einige Einschränkungen für "Top", "Bottom", "Leading" und "Trailing" hinzu und legen Sie fest, dass sie zum Zeitpunkt der Erstellung entfernt werden. Weitere Informationen hierzu finden Sie unter Ссылка

UPDATE: URL wurde geändert in Ссылка

    
Marius Constantinescu 03.06.2015, 12:22
quelle
0
  

Wie kann ich verhindern, dass der Interface Builder Einschränkungen automatisch generiert?

Einfachster Weg: Wählen Sie die Spitze oder das Storyboard im Projektnavigator, gehen Sie zum Dateiinspektor und deaktivieren Sie "Auto Layout verwenden".

    
matt 29.05.2015 16:52
quelle