Freigeben über


UIView.GetConstraintsAffectingLayout(UILayoutConstraintAxis) Methode

Definition

Gibt das Array von zurück NSLayoutConstraint , das sich auf das Layout des UIView entlang des angegebenen axisauswirkt.

[Foundation.Export("constraintsAffectingLayoutForAxis:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public virtual UIKit.NSLayoutConstraint[] GetConstraintsAffectingLayout (UIKit.UILayoutConstraintAxis axis);
abstract member GetConstraintsAffectingLayout : UIKit.UILayoutConstraintAxis -> UIKit.NSLayoutConstraint[]
override this.GetConstraintsAffectingLayout : UIKit.UILayoutConstraintAxis -> UIKit.NSLayoutConstraint[]

Parameter

axis
UILayoutConstraintAxis

Die Richtung des Interesses.

Gibt zurück

Der Standardwert ist ein leeres Array.

Attribute

Hinweise

Dies ist eine Debugmethode, die nicht in Produktionsanwendungen verwendet werden sollte.

Das zurückgegebene Array kann s enthalten NSLayoutConstraint, die nicht explizit auf verweisen thisUIView , die sich jedoch auf auswirken Frame. Wenn z. B this . an anotherView und anotherView angeheftet Superviewist, kann die -Methode beide Einschränkungen zurückgeben.

Diese Methode ist eine debugorientierte Hilfsmethode und gibt nicht garantiert den vollständigen Satz (oder beliebige) NSLayoutConstraints zurück.

Wenn diese Methode direkt von innerhalb ViewDidLoad()aufgerufen wird, gibt sie in der Regel ein leeres Array zurück. Wenn sie aufgerufen wird, wie im folgenden Beispiel gezeigt, ist es wahrscheinlicher, dass sie eine umfassende Antwort liefert.

mainView.AddConstraints(NSLayoutConstraint.FromVisualFormat("H:|-[blue]-|", 0, new NSDictionary(), viewsDictionary));
mainView.AddConstraints(NSLayoutConstraint.FromVisualFormat("V:|-[blue]-(==30)-[green(==blue)]-|", 0, new NSDictionary(), viewsDictionary));
mainView.AddConstraints(NSLayoutConstraint.FromVisualFormat("|-[green(==blue)]-|", 0, new NSDictionary(), viewsDictionary));

System.Threading.ThreadPool.QueueUserWorkItem(delegate {
  InvokeOnMainThread(delegate {
    foreach(var c2 in blueView.GetConstraintsAffectingLayout(UILayoutConstraintAxis.Horizontal))
    {
      Console.WriteLine(c2);
    }
  });
});

Gilt für: