我有 2 个按钮,我想彼此相邻,每个按钮占据屏幕宽度的一半(带边距)(即无论屏幕尺寸如何,它们的宽度都相同)。
我有以下几点:
contact.Below(auctioneerView, 10f),
contact.AtLeftOf (this, 10f),
contact.ToLeftOf (report, 10f),
contact.Height().EqualTo(50),
report.Below(auctioneerView, 10f),
report.Height().EqualTo(50),
report.AtRightOf (contact, 10f),
report.WithSameRight(this),
我尝试使用
report.Width().EqualTo(this.Frame.Width - 20f),
但这行不通,因为我怀疑在建立约束时,view
还没有width
,所以它是0
如何使用FluentLayout
让这两个按钮共享屏幕宽度?
你可以使用水平的UIStackView来实现这一点。我刚刚在设计器中对此进行了测试,效果很好。您可以设置堆栈视图的约束以水平填充屏幕,并向其中添加两个按钮。然后,可以将"分布"属性设置为"平均填充"。设置 Spacing 属性将更改两个按钮之间的间距。
下面是对来自 Xamarin 的堆栈视图的介绍。