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