Xamarin.Forms Shell 选项卡仅显示列表中的最后一个选项卡
Posted
技术标签:
【中文标题】Xamarin.Forms Shell 选项卡仅显示列表中的最后一个选项卡【英文标题】:Xamarin.Forms Shell Tabs only showing last Tab in the list 【发布时间】:2019-06-01 15:43:04 【问题描述】:我正在将现有代码迁移到 Xamarin Forms 4.0 Shell
,以前我使用的是 TabbedPage
,但现在我想使用 Shell
选项卡。
以下是迁移后代码的样子。我注意到的是它只显示一个顶部选项卡,该选项卡在列表中具有最后一个条目。就我而言,它只显示 Tab2。
<Shell xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:views="clr-namespace:App.Views.Tabs;assembly=App"
x:Class="App.Views.AppShell"
x:Name="self">
<TabBar>
<Tab>
<ShellContent>
<views:Tab1Page BindingContext="x:Reference self" Title="Tab1" />
<views:Tab2Page BindingContext="x:Reference self" Title="Tab2"/>
</ShellContent>
</Tab>
</TabBar>
</Shell>
【问题讨论】:
你想在上面看到两个标签吗? 将每个ContentPage放入<tab>
标签
@mshwf 将 ContentPage 放在单独的 <tab>
中会给我底部标签。相反,我需要顶部的标签。
能否分享一个基本的演示,以便我们进行测试?
【参考方案1】:
试试下面的代码:
<Shell>
...
<Tab>
<ShellContent Title="Tab1"> <!-- title in the tab -->
<views:Tab1Page Title="Tab1" BindingContext="x:Reference self"/>
<!-- Title in the navigation bar -->
</ShellContent>
<ShellContent Title="Tab2">
<views:Tab2Page Title="Tab2" BindingContext="x:Reference self"/>
</ShellContent>
</Tab>
...
</Shell>
微软文档
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/shell/tabs
【讨论】:
如果它回答了您的问题或对您有帮助,请通过upvote ▲/✅ 告诉我,否则您可以给我留下反馈/评论。以上是关于Xamarin.Forms Shell 选项卡仅显示列表中的最后一个选项卡的主要内容,如果未能解决你的问题,请参考以下文章
使用 Xamarin.Forms Shell 时主选项卡是不是可以显示在顶部
Xamarin Forms Shell 如何使用自定义渲染器自定义选项卡
Xamarin Forms Shell - 一次加载每个选项卡 - 急切加载而不是延迟加载
Xamarin.Forms Shell:有没有办法使用 GoToAsync 和 Routing 导航到选项卡,并在那里推送页面