我想創建一個包含 3 頁AboutPage、Page1、Page2的 Xamarin 應用程式。這 3 個頁面使用FlyoutItem進行分組,如下所示:
<FlyoutItem FlyoutDisplayOptions="AsMultipleItems" >
<ShellContent Route="AboutPage" Title="About" Icon="icon_about.png" ContentTemplate="{DataTemplate local:AboutPage}" />
<ShellContent Route="Page1" Title="Page1" Icon="icon_about.png" ContentTemplate="{DataTemplate local:Page1}" />
<ShellContent Route="Page2" Title="Page2" Icon="icon_about.png" ContentTemplate="{DataTemplate local:Page2}" />
</FlyoutItem>
我希望應用程式一旦啟動就登陸AboutPage并且我想將 Page1 的路線定義為AboutPage /Page1和Page2 AboutPage/Page2。從 Flyout導航到Page1或Page2后,我希望將頁面推送到 AboutPage的頂部。
如果我使用 GoToAsync() 它可以作業,但我必須注冊路由
Routing.RegisterRoute("Page1", typeof(Page1));
await Shell.Current.GoToAsync("//AboutPage/Page1");
我可以將 Flyout 上的 Click 事件覆寫到設備要使用的路徑嗎?有沒有更好的解決方案我沒有看到?
uj5u.com熱心網友回復:
試試這個方法。
<FlyoutItem ...
>
<Tab ...
Route="AboutPage" >
<ShellContent ...
Route="Page1" />
<ShellContent ...
Route="Page2" />
</Tab>
</FlyoutItem>
uj5u.com熱心網友回復:
感謝 WenxuLi-MSFT 的評論,
我決定使用他的建議,我將覆寫 onbackpressed 行為以導航到想要的頁面。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/439380.html
標籤:C# xml xamarin xamarin.forms
上一篇:如何解決Java.Lang.RuntimeException:'getParametersfailed(emptyparameters)'
