我希望在Xamarin.Forms中创建一个自定义的选项卡式页面,页眉和页脚保持不变。中间部分包含内容。
标题通常是文本标题。根据选项卡的选择,只有屏幕的中央部分会不断变化。
页脚包含不同的选项卡。它也不像通常的选项卡式页面。它更像是一个按钮,在选择时会更改颜色,并且它们之间有一定的间隔。
这是示例图片
答案 0 :(得分:0)
您可以通过右键单击项目,按“添加”,然后添加一个ContentView来创建ContentView。
然后,您可以使用网格并创建不同的行,并在一行上引用ContentView,在其他两行上引用页眉和页脚。
在Xaml
顶部引用这样的ContentView。
xmlns:Views="clr-namespace:SharedTestProject.ContentViews"
然后像这样定义Xaml
的其余部分。之后,您要做的就是实现更改可见视图的逻辑。
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="55"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid x:Name="NavigationButtons" HeightRequest="55" Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0" HeightRequest="50" WidthRequest="140" VerticalOptions="StartAndExpand" HorizontalOptions="CenterAndExpand">
<Button x:Name="BtnView1" Clicked="BtnView1_Clicked" Text="View1"/>
</Grid>
<Grid Grid.Column="1" HeightRequest="50" WidthRequest="140" VerticalOptions="StartAndExpand" HorizontalOptions="CenterAndExpand">
<Button x:Name="BtnView2" Clicked="BtnView2_Clicked" Text="View2"/>
</Grid>
<Grid Grid.Column="2" HeightRequest="50" WidthRequest="140" VerticalOptions="StartAndExpand" HorizontalOptions="CenterAndExpand">
<Button x:Name="BtnView3" Clicked="BtnView3_Clicked" Text="View3"/>
</Grid>
</Grid>
<Grid x:Name="ContentViews" Grid.Row="1">
<ContentViews:View1 x:Name="View1" IsVisible="True"/>
<ContentViews:View2 x:Name="View2" IsVisible="False"/>
<ContentViews:View3 x:Name="View3" IsVisible="False"/>
</Grid>
</Grid>