目前我有一项任务是创建一个包含多个stacklayout(一种盒子)的xamarin页面,并在填满屏幕后按顺序将其填充在水平方向上,然后剩余的盒子应该开始填写下一行水平。究竟Html中的Div标签如何与“Float:left”属性一起使用。 首先,是否有可能采用Xamarin形式? 我尝试使用Grid单元格的isvisible属性创建一个false或者为true的Grid,但它根本不是我正在处理的任务的解决方案。
布局应该如下图所示,如果我有三个框(根据后端的对象决定)那么它应该填充第一行三个连续的单元格,如果有5个对象被提取则第五个对象(框)应该被填充在第二行第一个单元格。
答案 0 :(得分:4)
在Xamarin中有很多方法可以实现它(因为默认情况下它不受支持):
将自定义ListView
用作FlowListView。
也许将来我们会有一个GridView
,例如在WPF中,这正是您正在寻找的。 p>
我希望这可以帮到你。
答案 1 :(得分:0)
另一种选择是使用网格:
您可以用您喜欢的任何内容替换Button
元素,每个按钮的高度为110,宽度将自动调整大小
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="110" />
<RowDefinition Height="110" />
<RowDefinition Height="110" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button Text="1" Grid.Row="0" Grid.Column="0" />
<Button Text="2" Grid.Row="0" Grid.Column="1" />
<Button Text="3" Grid.Row="0" Grid.Column="2" />
<Button Text="4" Grid.Row="1" Grid.Column="0" />
<Button Text="5" Grid.Row="1" Grid.Column="1" />
<Button Text="6" Grid.Row="1" Grid.Column="2" />
<Button Text="6" Grid.Row="2" Grid.Column="0" />
<Button Text="6" Grid.Row="2" Grid.Column="1" />
<Button Text="6" Grid.Row="2" Grid.Column="2" />
</Grid>
答案 2 :(得分:0)
使用flexlayout-从xamarin签出flexlayoutdemo应用