用砌体添加约束

Masonry 是 objective-c 的库,但是 xamarin 为它创建了一个绑定,并将其创建为 nuget 包 https://www.nuget.org/packages/Masonry/

Nuget 安装

Install-Package Masonry

这将按钮位于包含视图中心点下方 100 个点的中心,并设置 200 到 400 个点之间的宽度

this.loginBtn.MakeConstraints(make =>
{
    make.Width.GreaterThanOrEqualTo(new NSNumber(200));
    make.Width.LessThanOrEqualTo(new NSNumber(400));
    make.Center.EqualTo(this.View).CenterOffset(new CGPoint(0, 100));
});

这将缩放图像设置在包含视图的中心点上方 100 个点,然后将宽度设置为包含视图的宽度,其中 muliplier 为 0.5,这意味着宽度的 50%。然后将高度设置为宽度乘以纵横比,从而使图像缩放但保持正确的纵横比

this.logo.MakeConstraints(make =>
{
    make.Center.EqualTo(this.View).CenterOffset(new CGPoint(0, -100));
    make.Width.EqualTo(this.View).MultipliedBy(0.5f);
    make.Height.EqualTo(this.logo.Width()).MultipliedBy(0.71f);
});