Share via


UIView.GetConstraintsAffectingLayout(UILayoutConstraintAxis) Metodo

Definizione

Restituisce la matrice di NSLayoutConstraint che influisce sul layout dell'oggetto UIView lungo l'oggetto specificato axis.

[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[]

Parametri

axis
UILayoutConstraintAxis

Direzione dell'interesse.

Restituisce

Il valore predefinito è una matrice vuota.

Attributi

Commenti

Si tratta di un metodo di debug che non deve essere usato nelle applicazioni di produzione.

La matrice restituita può contenere NSLayoutConstraints che non fanno riferimento thisUIView in modo esplicito, ma che tuttavia influiscono su Frame. Ad esempio, se this viene aggiunto a anotherView e anotherView viene aggiunto al relativo Superview, il metodo può restituire entrambi i vincoli.

Questo metodo è un metodo helper orientato al debug e non è garantito che restituisca il set completo (o uno qualsiasi). NSLayoutConstraint

Se questo metodo viene chiamato direttamente dall'interno ViewDidLoad()di , in genere restituirà una matrice vuota. Se viene richiamato come illustrato nell'esempio seguente, sembra essere più probabile fornire una risposta completa.

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);
    }
  });
});

Si applica a