Xamarin.Forms öğesindeki bir denetimin Height
ve Width
özelliklerini kullanmaya çalışırken, her ikisi de -1 değerini döndürür ve Bağıl Mizanpajın ekranda ortalanmış görünmesine neden olur.Xamarin.Forms: Relative Layout'u kullanarak görünümleri nasıl ortalarsınız? Genişlik ve Yükseklik, -1
var mainLayout = new RelativeLayout();
//Add the Switch to the center of the screen
mainLayout.Children.Add(mySwitch,
Constraint.RelativeToParent(parent => parent.Width/2 - mySwitch.Width/2),
Constraint.RelativeToParent(parent => parent.Height/2 - mySwitch.Height/2));
//Add a Label below the switch
mainLayout.Children.Add(switchLabel,
Constraint.RelativeToParent(parent => parent.Width/2 - switchLabel.Width/2),
Constraint.RelativeToView(mySwitch, (parent, view) => view.Y + mySwitch.Height + 10));
Content = mainLayout;
Bu, dinamik metin içeren etiketleri ortalamak için de harika! Metin, boyut olarak arttıkça/azaldıkça, Bağıl Düzen otomatik olarak genişliğini yeniden hesaplar ve Etiket'i merkezde tutar. –
Xamarin Forms'taki CaptainXamtastic'in yanıtı da bunu açıklayan harika bir iş: https://forums.xamarin.com/discussion/22902/how-to-add-a-label-to-a-relative-layout-and -center-it-horizontally –
XAML'de bunu yapmanın bir yolu var mı? –