2016-08-04 56 views
0

I einen Beschränkungswert ändern müssen während der Ausführung (die height Wert), die vom 19. bis 45.Got ‚nicht in der Lage, gleichzeitig Bedingungen zu erfüllen‘ -Nachricht nach Wert NSLayoutConstraints.constant Zuordnung

dies zu tun, ich hat die Eigenschaft constraint hinzugefügt.

@IBOutlet weak var cnst: NSLayoutConstraint!

Und dann schrieb ich folgendes ein.

cnst.constant = 45

Dann habe ich diese Meldung:

2016-08-04 11:19:49.352 IMOZOMO[45034:538195] Unable to simultaneously satisfy constraints. 
Probably at least one of the constraints in the following list is one you don't want. 
Try this: 
    (1) look at each constraint and try to figure out which you don't expect; 
    (2) find the code that added the unwanted constraint or constraints and fix it. 
(
"<NSLayoutConstraint:0x7ff278c27e70 V:[UIView:0x7ff278c27f40(45)]>", 
"<NSLayoutConstraint:0x7ff27a9b1ee0 V:[UIView:0x7ff278c27f40(19)]>" 
) 

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x7ff278c27e70 V:[UIView:0x7ff278c27f40(45)]> 

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger. 
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKit/UIView.h> may also be helpful. 

scheint, wie die vorherige Eigenschaft bleibt und die Höhe des bezeichneten Objekts nicht ändern. Ich dachte, die Beschränkung mit der Höhe von 19 könnte verschwinden.

Wie kann ich den konstanten Wert von NSLayoutConstraint ändern?

+0

Sind Sie 100% sicher, dass Sie nicht zwei Einschränkungen haben, die eine Höhe von '19' angeben? Weil die Art, wie Sie die Konstante anpassen, in Ordnung ist, muss es ein anderes Problem sein. – paulvs

+0

@paulvs Es gibt einige andere Einschränkungen für das Objekt, aber nur eine davon beschränkt seine Höhe. –

+0

Es sieht so aus, als stünde Ihre andere Einschränkung in Konflikt mit der neuen Höhe. Sehen Sie sich Ihre Einschränkung an, die sich auf das '.y' auswirkt, und sehen Sie, was nicht benötigt wird? –

Antwort

1

Als Fehler sagt, Sie haben einen Konflikt in Ihrem Einschränkungen auf Höhe Constraint Wert bekam = 45.

nun in der Höhe 19, könnte es die Hierarchie befriedigend sein, aber auf 45, es ist widersprüchlich.

LÖSUNG:

Versuchen Sie, die Höhe Beschränkung auf 45 in der Interface Builder Einstellung, und es sollten Sie den Fehler zeigen sofort.