我成功创建了Xamarin.Forms MasterDetailPage
,但是我需要类似的东西,
我以为有两个ListView
个孩子
<ContentPage ...
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
Title="Master Main">
<Grid VerticalOptions="Fill">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ListView x:Name="MenuItemsListView"
SeparatorVisibility="None"
HasUnevenRows="False">
<ListView.ItemTemplate>
...
</ListView.ItemTemplate>
</ListView>
<ListView x:Name="otherItemsListView">
...
</ListView>
</Grid>
</ContentPage>
但是无论我设置了RowDefinitions
还是相等地划分了网格的高度。我没主意。请帮忙。
答案 0 :(得分:2)
如果您使用两个列表视图,则它们将具有单独的滚动。我想你不想这样吗? 您可以做的是对列表项源中的不同项类型使用不同的项模板。如果需要,请查看https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/templates/data-templates/selector。
答案 1 :(得分:1)
如果您希望网格中的某些内容占屏幕的一定比例,请使用星形调整大小。为了获得想要的效果,可能类似于:
<Grid.RowDefinitions>
<RowDefinition Height="8*" />
<RowDefinition Height="2*" />
</Grid.RowDefinitions>
在此示例中,第一行占据了80%的网格,第二行占据了20%的网格。请注意,我也可以使用.8和.2或80和20,但仍然获得相同的效果。看看Xamarin docs关于网格的更多信息。