Als «nslayoutconstraint» getaggte Fragen

NSLayoutConstraint ist eine Einschränkung, die eine Beziehung zwischen zwei Benutzeroberflächenobjekten definiert, die vom auf Einschränkungen basierenden Layoutsystem erfüllt werden müssen. Verfügbar in iOS 6.0 und höher in UIKit und verfügbar in OS X 10.7 und höher in AppKit.

16
So fügen Sie mithilfe von Swift programmgesteuert Einschränkungen hinzu
Ich versuche das seit letzter Woche herauszufinden, ohne noch einen Schritt weiter zu gehen. Ok, also muss ich einige anwenden Einschränkungen programmatisch in Swift zu einem UIViewmit diesem Code: var new_view:UIView! = UIView(frame: CGRectMake(0, 0, 100, 100)); new_view.backgroundColor = UIColor.redColor(); view.addSubview(new_view); var constX:NSLayoutConstraint = NSLayoutConstraint(item: new_view, attribute: NSLayoutAttribute.CenterX, relatedBy: NSLayoutRelation.Equal, …

2
setNeedsLayout vs. setNeedsUpdateConstraints und layoutIfNeeded vs updateConstraintsIfNeeded
Ich weiß, dass die Auto-Layout-Kette im Grunde genommen aus 3 verschiedenen Prozessen besteht. Einschränkungen aktualisieren Layoutansichten (hier erhalten wir die Berechnung von Frames) Anzeige Was mir nicht ganz klar ist, ist der innere Unterschied zwischen -setNeedsLayoutund -setNeedsUpdateConstraints. Aus Apple Docs: setNeedsLayout Rufen Sie diese Methode im Hauptthread Ihrer Anwendung auf, …


16
Wenn Einschränkungen nicht gleichzeitig erfüllt werden können, wird versucht, sie durch Aufheben der Einschränkung wiederherzustellen
Unten ist die Fehlermeldung, die ich im Debug-Bereich erhalte. Es läuft gut und nichts ist falsch, außer dass ich diesen Fehler erhalte. Würde dies verhindern, dass Apple die App akzeptiert? Wie behebe ich das? 2012-07-26 01:58:18.621 Rolo[33597:11303] Unable to simultaneously satisfy constraints. Probably at least one of the constraints in …

13
Kann ich die Multiplikatoreigenschaft für NSLayoutConstraint ändern?
Ich habe zwei Ansichten in einer Übersicht erstellt und dann Einschränkungen zwischen den Ansichten hinzugefügt: _indicatorConstrainWidth = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeWidth multiplier:1.0f constant:0.0f]; [_indicatorConstrainWidth setPriority:UILayoutPriorityDefaultLow]; _indicatorConstrainHeight = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeHeight multiplier:1.0f constant:0.0f]; [_indicatorConstrainHeight setPriority:UILayoutPriorityDefaultLow]; [self addConstraint:_indicatorConstrainWidth]; [self addConstraint:_indicatorConstrainHeight]; Jetzt möchte ich die Multiplikatoreigenschaft mit Animation …




10
Probleme mit automatischen Layoutbeschränkungen unter iOS7 in UITableViewCell
Ich verwende programmgesteuert automatische Layoutbeschränkungen, um meine benutzerdefinierten UITableView-Zellen zu gestalten, und definiere die Zellengrößen in korrekt tableView:heightForRowAtIndexPath: Es funktioniert ganz gut auf iOS6 und es tut Blick fein in iOS7 auch ABER wenn ich die App unter iOS7 starte, ist hier die Art von Nachricht, die ich in der …

8
Wann kann ich Layoutbeschränkungen aktivieren / deaktivieren?
Ich habe in IB mehrere Sätze von Einschränkungen eingerichtet und möchte je nach Status programmgesteuert zwischen diesen wechseln. Es gibt eine constraintsAOutlet-Sammlung, die alle als von IB installiert markiert sind, und eine constraintsBOutlet-Sammlung, die alle in IB deinstalliert sind. Ich kann programmgesteuert zwischen den beiden Sätzen umschalten: NSLayoutConstraint.deactivateConstraints(constraintsA) NSLayoutConstraint.activateConstraints(constraintsB) Aber …



7
Wie kann ich in iOS programmgesteuert Einschränkungen für das Seitenverhältnis festlegen?
Ich habe das automatische Layout für meine Ansichtssteuerungen verwendet. Ich habe die V- und H-Positionen in Einschränkungen festgelegt, möchte aber wissen, wie ich meine Tastengröße erhöhen kann, wenn sie auf 5s, 6 und 6 Plus geändert wird. Auf diese Weise habe ich Einschränkungen für die Anmeldeschaltfläche hinzugefügt: NSArray *btncon_V=[NSLayoutConstraint constraintsWithVisualFormat:@"V:[btnLogin(40)]" …

7
Programmgesteuert CenterX / CenterY-Einschränkungen hinzufügen
Ich habe einen UITableViewController, der keine Abschnitte anzeigt, wenn nichts zu zeigen ist. Ich habe eine Beschriftung hinzugefügt, um dem Benutzer anzuzeigen, dass mit diesem Code nichts angezeigt werden kann: label = UILabel(frame: CGRectMake(20, 20, 250, 100)) label.text = "Nothing to show" self.tableView.addSubview(label) Aber jetzt möchte ich, dass es horizontal …

8
Wenn Sie das X der Unteransicht im Autolayout zentrieren, wird "nicht auf die Einschränkung vorbereitet" angezeigt.
Ich habe eine benutzerdefinierte UIView-Unterklasse, die über eine Schreibfeder initialisiert wird. In -awakeFromNiberstelle ich eine Unteransicht und versuche, sie in der Übersicht zu zentrieren. [self setInteralView: [[UIView alloc] init]]; [[self internalView] addConstraint: [NSLayoutConstraint constraintWithItem: [self internalView] attribute: NSLayoutAttributeCenterX relatedBy: NSLayoutRelationEqual toItem: self attribute: NSLayoutAttributeCenterX multiplier: 1 constant: 0]]; Dies bricht …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.