You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何隐藏TabBar中的Loading页面标签?

解决TabBar中隐藏Loading页面标签同时保留导航功能的方案

核心思路

将LoadingPage从TabBar的直接子节点中移出,把它设置为Shell的根级ShellContent,TabBar单独作为Shell的另一子节点。这样LoadingPage会成为应用启动的首个页面,既不会出现在TabBar的标签列表里,也能正常保留导航能力。

修改后的XAML代码

<Shell>
    <!-- 作为启动页的LoadingPage,独立于TabBar之外 -->
    <ShellContent
        Title="Loading"
        ContentTemplate="{DataTemplate local:LoadingPage}"
        Route="MedexPatientAppsV2.Views.LoadingPage"
        Shell.FlyoutBehavior="Disabled" />

    <!-- TabBar单独作为Shell的子节点,包含所有业务标签页 -->
    <TabBar>
        <Tab Title="Home" Icon="home">
            <ShellContent ContentTemplate="{DataTemplate local:HomePage}" Route="MedexPatientAppsV2.Views.HomePage" />
        </Tab>
        <Tab Title="Clinic" Icon="clinic">
            <ShellContent ContentTemplate="{DataTemplate local:ClinicPage}" />
        </Tab>
        <Tab Title="Benefit" Icon="benefit" IsVisible="{Binding IsTPA}">
            <ShellContent ContentTemplate="{DataTemplate local:BenefitListPage}" />
        </Tab>
        <Tab Title="Bill" Icon="claim">
            <ShellContent ContentTemplate="{DataTemplate local:BillListPage}" />
        </Tab>
        <Tab Title="MC" Icon="cert">
            <ShellContent ContentTemplate="{DataTemplate local:McPage}"/>
        </Tab>
    </TabBar>
</Shell>

补充说明

  • 应用启动后会自动加载根级的LoadingPage,完成登录状态检查后,可通过以下代码导航到TabBar的首页:
// 在LoadingPage的登录检查逻辑完成后执行
await Shell.Current.GoToAsync("//Home");
  • 后续若需重新导航到LoadingPage,直接调用路由即可:
await Shell.Current.GoToAsync("//MedexPatientAppsV2.Views.LoadingPage");

内容的提问来源于stack exchange,提问作者abc123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 09:25:08