我有几个关于显示显示弹出窗口的汉堡图标并转到上一页的问题。
我在 Visual Studio 中创建了默认应用程序并添加了第二个页面
我在AppShell.xaml.cs中注册了第二个页面
Routing.RegisterRoute(nameof(SecondPage), typeof(SecondPage));
Run Code Online (Sandbox Code Playgroud)
在 MainPage.xaml 中,我添加了一个按钮,按下该按钮会将用户发送到第二页
await Shell.Current.GoToAsync(nameof(SecondPage), true);
Run Code Online (Sandbox Code Playgroud)
当单击按钮到达第二页时,我们看到后退按钮并且没有汉堡包图标
您仍然可以从左侧滑动以显示弹出窗口,但 如何在第二页上显示汉堡包图标?
我的第二个问题是,是否在弹出窗口中添加指向第二页的链接 - AppShell.xaml
<ShellContent
Title="Second Page"
ContentTemplate="{DataTemplate local:SecondPage}"
Route="SecondPage" />
Run Code Online (Sandbox Code Playgroud)
单击它后,我们确实会看到汉堡包图标
但没有后退按钮,如果您使用 Android 的后退按钮单击后退,则会退出应用程序。所以,我的第二个问题是如何使菜单上的单击行为像单击按钮一样。
这是因为浮出控件执行绝对路由,但您的代码执行相对路由并维护导航堆栈。
如果您想以编程方式获得相同的行为,则需要切换到绝对路由。
await Shell.Current.GoToAsync($"//{nameof(SecondPage)}");
阅读有关 Shell 导航的更多信息。NET MAUI 文档
| 归档时间: |
|
| 查看次数: |
4259 次 |
| 最近记录: |