在登录流程中,登录页面通常没有构成应用程序主要流程的底部选项卡。
AppShell.xaml
<TabBar>
<ShellContent Title="Home"
Icon="home.png"
ContentTemplate="{DataTemplate local:HomePage}"/>
<ShellContent Title="Articles"
Icon="articles.png"
ContentTemplate="{DataTemplate local:ArticlesPage}" />
</TabBar>
Run Code Online (Sandbox Code Playgroud)
因此,如果登录成功,我尝试从登录页面导航到作为 Shell 中 TabBar 的一部分的主页。问题是 Shell 然后导航到主页,就好像它是一个独立的页面,没有 TabBar。我假设答案在于导航到 TabBar 部分本身,我不知道。
Col*_*SFT 20
有两种方法可以实现您的要求。
设置AppShell为.MainPageApp
在AppShell中放置两个Tabbar,LoginPage先放置后放置,并为两者HomePage设置不同。RouteTabbar
<TabBar Route="Login">
<ShellContent ContentTemplate="{DataTemplate local:LoginPage}" />
</TabBar>
<TabBar Route="Home">
<ShellContent Title="Home" Icon="home.png" ContentTemplate="{DataTemplate local:HomePage}"/>
<ShellContent Title="Articles" Icon="articles.png" ContentTemplate="{DataTemplate local:ArticlesPage}" />
</TabBar>
Run Code Online (Sandbox Code Playgroud)
await Shell.Current.GoToAsync("//Home");登录时调用,await Shell.Current.GoToAsync("//Login");退出时调用。
LoginPage按照最初的MainPage设置。AppMainPage = new AppShell();登录时调用,MainPage = new LoginPage();注销时调用。| 归档时间: |
|
| 查看次数: |
7927 次 |
| 最近记录: |