在我的 Xamarin Forms 5 應用程式中,我試圖將 a 添加ToolbarItem到 aContentPage中,它是 a 的“孩子”,TabbedPage但未ToolbarItem顯示。
這里的關鍵點是應用程式使用AppShell和定義的選項卡AppShell.xaml如下所示:
<FlyoutItem Title="Home">
<FlyoutItem.Icon>
<FontImageSource
FontFamily="MISHRP"
Glyph="{StaticResource HomeIcon}"
Color="White" />
</FlyoutItem.Icon>
<ShellContent Route="HomePage" ContentTemplate="{DataTemplate local:HomePage}" />
</FlyoutItem>
主頁有三個指向ContentPage's 的選項卡:
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
... // Removed for brevity>
<local:CommercialFeed Title="Feed" />
<local:PersonalCard Title="Card" />
<local:Vendors Title="Vendors" />
</TabbedPage>
我現在ToolbarItem在“供應商”頁面中添加一個,但它沒有顯示。我讀到我需要將主頁包裝在NavigationPage.
我這里有兩個問題:
- 因為我使用的是 AppShell,所以我后面的代碼如下所示
MainPage = new AppShell();:所以不知道如何處理這部分。我試過MainPage = new NavigationPage(new AppShell());了,但這又產生了另一個問題——見下文——它也使應用程式崩潰。 - 我有一個登錄頁面,它也在
AppShell. 當我嘗試上面的代碼時,我在登錄頁面上也有一個導航欄,這是一個問題。登錄頁面中不應有導航欄。
我該如何處理這個問題,以便我可以ToolbarItems在我的供應商頁面中擁有?謝謝。
uj5u.com熱心網友回復:
首先,我認為混合Shell和舊的TabbedPage(使用其中任何一個)是一個壞主意,在我看來,最好將你的 ui 結構從 更改為 andTabbedPage的組合,Tabbar并且Tab兩者都在Shell Xamarin.Forms Shell tabs中。
<TabBar>
<Tab Title="Feed">
<ShellContent Title="Feed" ContentTemplate="{DataTemplate local:CommercialFeed}"/>
</Tab>
<Tab Title="Cards">
<ShellContent Title="Cards" ContentTemplate="{DataTemplate PersonalCard}"/>
</Tab>
<Tab Title="Vendors">
<ShellContent Title="Vendors" ContentTemplate="{DataTemplate local:Vendors}"/>
</Tab>
</TabBar>
現在ToolbarItems在每一頁上定義:
<ContentPage.ToolbarItems>
<ToolbarItem Text="..." .../>
</ContentPage.ToolbarItems>
如果您想繼續使用TabbedPage,請檢查如何在 Xamarin Form 中的 TabbedPage 中添加工具列項
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/442264.html
標籤:xml xamarin xamarin.forms 标签页 xamarin.forms.shell
上一篇:如何在R中解壓縮元組格式?
