Xaml 在Xamarin表单中同时显示选项卡栏和工具栏

Xaml 在Xamarin表单中同时显示选项卡栏和工具栏,xaml,xamarin.forms,Xaml,Xamarin.forms,我是移动应用程序开发的初学者,我正在为一个项目使用Xamarin表单开发一个android应用程序 它有3个标签页 当用户单击某个内容时,每个页面都需要执行一些操作 由于在一个选项卡中要单击的操作很少,而且每个选项卡的操作都不同,所以我想同时显示工具栏和选项卡栏,就像界面中显示的“Whatsapp”一样 我有三页,分别是《农场》、《治疗》和《尸检》 在tabbedPageContainer XAML中,所有3个页面都显示为选项卡式页面 这是tabbedPageContainer XAML代码 &

我是移动应用程序开发的初学者,我正在为一个项目使用Xamarin表单开发一个android应用程序

它有3个标签页

当用户单击某个内容时,每个页面都需要执行一些操作

由于在一个选项卡中要单击的操作很少,而且每个选项卡的操作都不同,所以我想同时显示工具栏和选项卡栏,就像界面中显示的“Whatsapp”一样

我有三页,分别是《农场》、《治疗》和《尸检》

在tabbedPageContainer XAML中,所有3个页面都显示为选项卡式页面

这是tabbedPageContainer XAML代码

<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:d="http://xamarin.com/schemas/2014/forms/design"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             mc:Ignorable="d"
             x:Class="TabbedForms.TabbedPages.TabbedPageContainer"
            xmlns:pages="clr-namespace:TabbedForms.TabbedPages" 
            >

    <pages:page_Farm />
    <pages:Page_Treatments/>
    <pages:Page_Autopsy/>

</TabbedPage>
我正在android 8.1上使用VS 2019企业版和测试

 public App()
        {
            InitializeComponent();

            MainPage = new NavigationPage( new TabbedPage1());
        }
选项卡页:

<?xml version="1.0" encoding="utf-8" ?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:d="http://xamarin.com/schemas/2014/forms/design"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             mc:Ignorable="d"
             xmlns:page="clr-namespace:XamarinControls"
             x:Class="XamarinControls.TabbedPage1">
  <!--Pages can be added as references or inline-->
  <page:Page4 Title="Tab 1" />
  <ContentPage Title="Tab 2" />
  <ContentPage Title="Tab 3" />
</TabbedPage>

内容页:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:d="http://xamarin.com/schemas/2014/forms/design"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             mc:Ignorable="d"
             NavigationPage.HasNavigationBar="True"
             x:Class="XamarinControls.Page4">
    <ContentPage.ToolbarItems>
        <ToolbarItem Text="Add" Priority="0"/>
        <ToolbarItem Text="Noti" Priority="1"/>
    </ContentPage.ToolbarItems>
    <ContentPage.Content>
        <StackLayout>
            <Label Text="Welcome to Xamarin.Forms!"
                VerticalOptions="CenterAndExpand" 
                HorizontalOptions="CenterAndExpand" />
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

这对我有用


您可以将选项卡的子内容页面放在导航页面中,如

<TabbedPage.Children>
    <NavigationPage Title="xxx" IconImageSource="xxx">
        <x:Arguments>
            <views:ItemsPage1 />
        </x:Arguments>
    </NavigationPage>

    <NavigationPage Title="xxx" IconImageSource="xxx">
        <x:Arguments>
            <views:ItemsPage2 />
        </x:Arguments>
    </NavigationPage>
</TabbedPage.Children>


你能给我看看你的
main活动
App.xaml.cs
?@FreakyAli TabbedPageContainer是主页面。其他页面显示在这些选项卡中。@Bharath我尝试过这个,但不起作用。实际上它什么也不做。它给了我这个错误:无法从'Xamarin.Forms.Tab'转换为'Xamarin.Forms.Page'tabbedPageContainer是从TabbedPage继承的,我想这可能是我得到这个错误的原因。@KLM我编辑了答案,请检查解决方案是否适用于meI刚刚将“new TabbedPage1”更改为myapp.xaml.cs中的“tabbedPageContainer”,它真的很有效。非常感谢@Bharath的帮助。
<TabbedPage.Children>
    <NavigationPage Title="xxx" IconImageSource="xxx">
        <x:Arguments>
            <views:ItemsPage1 />
        </x:Arguments>
    </NavigationPage>

    <NavigationPage Title="xxx" IconImageSource="xxx">
        <x:Arguments>
            <views:ItemsPage2 />
        </x:Arguments>
    </NavigationPage>
</TabbedPage.Children>