【发布时间】:2022-10-25 17:12:41
【问题描述】:
我的应用程序相当简单,但在如何最好地使用 Shell 设置我的应用程序的导航/流程以及是否最好使用 Current.GoToAsync() 或 Current.Navigation.PushAsync() 在页面之间切换时遇到了问题. (或者如果有更好的方法。)
我的应用程序从启动页面开始,然后是登录页面,然后是带有 2 个选项的选项卡式页面。这些选项卡中的每一个都显示带有列表视图的页面,单击其中一个项目会将您带到带有后退按钮的详细信息页面,以返回到列表视图页面。
选项卡式页面的标题中还有一个设置按钮,它将显示设置的弹出页面。
This crude drawing kinda shows what I mean.
目前,在 AppShell.xaml 我有:
<Shell>
<ShellContent ContentTemplate="{DataTemplate views:SplashScreen}" />
</Shell>
用户登录后,他们将被带到 MainPage.xaml,这是一个 TabbedPage 设置,如下所示:
<TabbedPage>
<views:DemoPageA Title="A" />
<views:DemoPageB Title="B" />
</TabbedPage>
不幸的是,我总是在每个屏幕上看到一个后退按钮。例如,我不希望用户返回初始屏幕或登录屏幕。
我只是不确定我是否需要在 AppShell.xaml.cs 中以不同方式定义我的应用程序或什么。任何想法表示赞赏。谢谢!
【问题讨论】:
-
既然 Shell 也支持 Tabs,为什么还要将 Shell 与 TabbedPage 混合使用?如果您仅将 Shell 用于一页,这也是一种浪费。请缩小您的问题(关于后退按钮问题?)并包括更多详细信息,您如何从 Shell 导航到 TabbedPage。
-
@Cfun这就是我要说的:如何制作一个代表我要构建的应用程序的流程/导航的Shell?常规页面、常规页面、带有导航到常规页面的列表视图页面的选项卡式页面。
标签: xamarin navigation maui